Java 기초집LESSON 06
조건문: if, switch와 게임 점수 등급 계산
난이도입문 → 초급
예상 시간35분
선수지식이전 강의
6강. 조건문: if, switch와 게임 점수 등급 계산
1. 이번 강의에서 해결할 문제
조건 순서가 뒤집히거나 모든 경우를 처리하지 않으면 높은 점수가 낮은 등급을 받거나 새 모드가 조용히 누락됩니다.
2. 학습 목표
3. 핵심 개념
if-else 체인은 위에서부터 첫 true 분기만 실행되므로 높은 기준부터 검사합니다. switch 식은 가능한 입력별 결과를 한 표현식으로 만들고 알 수 없는 문자열은 default에서 명시적으로 처리합니다.
4. 단계별 실습
1. src/GradeCalculator.java 작성
실행 환경: 코드 편집기
실행 위치: C:\dev\game-records
실행 전 확인: 같은 이름의 기존 파일이 있다면 덮어쓰기 전에 Git diff와 이번 강의 변경 범위를 확인합니다.
대상 파일: src/GradeCalculator.java
src/GradeCalculator.java
public class GradeCalculator {
public static void main(String[] args) {
int score = 1_350;
String mode = "ranked";
String grade;
if (score >= 1_500) grade = "S";
else if (score >= 1_200) grade = "A";
else if (score >= 900) grade = "B";
else grade = "C";
int modeBonus = switch (mode) {
case "ranked" -> 200;
case "casual" -> 50;
default -> 0;
};
System.out.println("등급: " + grade + ", 보너스: " + modeBonus);
}
}
2. PowerShell에서 컴파일·실행
실행 환경: Windows PowerShell
실행 위치: C:\dev\game-records
실행 전 확인: java -version과 javac -version이 선택한 LTS JDK를 가리키고, 소스 파일명이 public 클래스명과 일치하는지 확인합니다.
대상: 이 강의의 .java 파일, out의 class 파일과 명시된 출력 파일
Windows PowerShell
Set-Location C:\dev\game-records
javac -d out .\src\GradeCalculator.java
java -cp out GradeCalculator
예상 결과: 1350점은 A 등급, ranked 보너스는 200으로 출력됩니다.
5. 코드가 동작하는 이유
점수 조건을 큰 값부터 검사해 범위가 겹쳐도 올바른 첫 분기를 선택합니다. switch 식은 각 case가 값을 제공하므로 별도 mutable 변수 없이 결과를 만듭니다.
6. 자주 하는 실수와 해결법
7. 직접 실습
8. 이해 점검 질문 3개
9. 핵심 요약
MINI QUIZ
0 / 2조건문: if, switch와 게임 점수 등급 계산 미니 퀴즈
선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.
LESSON STATUS
6강. 조건문: if, switch와 게임 점수 등급 계산 미완료 상태학습을 마쳤나요?
직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.