Menu
Coddy logo textTech

'switch' 문

Coddy Dart 여정의 기초 섹션에 포함된 레슨 — 94개 중 36번째.

Dart의 switch statement는 변수가 서로 다른 값들과 비교될 때 여러 if-else statements 대신 더 깔끔한 대안을 제공합니다.

void main() {
  String grade = 'B';
  
  switch (grade) {
    case 'A':
      print('Excellent performance!');
      break;
    case 'B':
      print('Good performance!');
      break;
    case 'C':
      print('Average performance.');
      break;
    case 'D':
      print('Below average performance.');
      break;
    default:
      print('Invalid grade.');
      break;
  }
}

실행하면 다음과 같이 출력됩니다: Good performance!

challenge icon

챌린지

쉬움

switch 문을 사용하여 시험 점수에 따라 학생의 등급을 결정하는 프로그램을 만드세요:

  1. 값이 85인 정수 변수 examScore를 선언하세요
  2. 알파벳 등급을 저장할 문자열 변수 grade를 만드세요
  3. 다음 규칙으로 switch 문을 사용하세요:
    • examScore가 90에서 100 사이(포함)인 경우, grade를 "A"로 설정하세요
    • examScore가 80에서 89 사이(포함)인 경우, grade를 "B"로 설정하세요
    • examScore가 70에서 79 사이(포함)인 경우, grade를 "C"로 설정하세요
    • examScore가 60에서 69 사이(포함)인 경우, grade를 "D"로 설정하세요
    • 기타 모든 점수의 경우, grade를 "F"로 설정하세요
  4. 결과를 정확히 이 형식으로 출력하세요: Score: 85, Grade: B

참고: switch와 작동하는 범위로 점수를 변환하기 위해 정수 나눗셈을 사용해야 합니다.

치트 시트

Dart의 switch 문은 변수가 서로 다른 값들과 비교될 때 여러 if-else 문의 더 깔끔한 대안을 제공합니다.

switch (variable) {
  case 'value1':
    // code to execute
    break;
  case 'value2':
    // code to execute
    break;
  default:
    // code for unmatched cases
    break;
}

각 case는 fall-through를 방지하기 위해 break 문으로 끝나야 합니다. default case는 어떤 특정 case와도 일치하지 않는 값을 처리합니다.

String grade = 'B';

switch (grade) {
  case 'A':
    print('Excellent performance!');
    break;
  case 'B':
    print('Good performance!');
    break;
  default:
    print('Invalid grade.');
    break;
}

직접 해보기

void main() {
  // examScore 변수를 여기 선언하세요
  int examScore = 85;
  
  // grade 변수를 여기 선언하세요
  String grade;
  
  // switch 문을 사용하여 등급을 결정하세요

  
  // 결과를 출력하세요
  print("Score: $examScore, Grade: $grade");
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨