: 똑같은 작업을 반복할때 반복문 사용
>> for(초기식;조건식;증감식)
{명령;
}
//"Java Programming"를 화면에 5번 출력
for(int i=1;i<=5;i++) {
System.out.println("Java Programming");
}
//1~100 범위의 정수들의 합계를 계산하는 프로그램 => 1+2+3+...+98+99+100 = ?
int tot=0;//정수들의 합계를 저장할 변수
for(int i=1;i<=100;i++) {//tot=1+2+3+...+98+99+100
tot+=i;
}
System.out.println("1~100 범위의 정수들의 합계 = "+tot);
if(조건식) { 명령; 명령; ... }
//변수값이 60 이상인 경우 합격 메세지를 출력하고 아니라면 불합격 메세지 출력
if(score>=60) {
System.out.println("[결과]점수가 60점 이상이므로 합격입니다.");
} else {
System.out.println("[결과]점수가 60점 미만이므로 불합격입니다.");
}
//=> 조건이 두개인 경우 위 처럼 if 와 else 사용하여 출력
//변수값으로 등급을 구분하여 출력
//100~90 : A, 89~80 : B, 79~70 : C, 69~60 : D, 59~0 : F
String grade="";//등급을 저장하기 위한 변수 - 초기화 설정
/*
if(jumsu<=100 && jumsu>=90) {
grade="A";
} else if(jumsu<=89 && jumsu>=80) {
grade="B";
} else if(jumsu<=79 && jumsu>=70) {
grade="C";
} else if(jumsu<=69 && jumsu>=60) {
grade="D";
} else if(jumsu<=59 && jumsu>=0) {
grade="F";
}
*/
if(jumsu>=90) {
grade="A";
} else if(jumsu>=80) {
grade="B";
} else if(jumsu>=70) {
grade="C";
} else if(jumsu>=60) {
grade="D";
} else {
//모든 조건식이 거짓인 경우 실행될 명령
grade="F";
}
System.out.println("[결과]"+jumsu+"점 >> "+grade+"학점");
} else {
System.out.println("[에러]0~100 범위을 벗어난 비정상적인 값이 입력 되었습니다.");
}
}
}
: 값을 비교하여 명령 선택 실행 - 실수값 비교 제외
- 비교대상에는 변수 또는 연산식을 작성하여 비교하고자 하는 값을 제공
- switch의 값을 case에 작성된 값과 비교하여 같은 경우 해당 위치로부터 작성된 모든 명령
- case의 값은 반드시 리터럴만 사용 가능하며 case의 값을 중복 선언하면 에러 발생
- 모든 case의 비교값이 다른 경우 default에 작성된 명령 실행 - 생략 가능
✔️ break 구문을 만나면 switch 구문 강제 종료
switch(비교대상) {
case 값1: 명령; 명령; ... [break;]
case 값2: 명령; 명령; ... [break;]
case 값3: 명령; 명령; ... [break;]
...
[default: 명령; 명령; ...]
}
public class SwitchApp {
public static void main(String[] args) {
//int choice=1;
//int choice=2;
int choice=3;
switch(choice) {
case 1:
System.out.println("수성으로 이동합니다.");
case 2:
System.out.println("금성으로 이동합니다.");
case 3:
System.out.println("화성으로 이동합니다.");
default: //switch의 값과 case의 값이 모두 다른 경우 default 위치의 명령 실행
System.out.println("지구로 이동합니다.");
}
//=> 화성으로 이동합니다.
//변수값으로 등급을 구분하여 출력
//100~90 : A, 89~80 : B, 79~70 : C, 69~60 : D, 59~0 : F
String grade="";
switch(jumsu/10) {
case 10:
case 9: grade="A"; break;
case 8: grade="B"; break;
case 7: grade="C"; break;
case 6: grade="D"; break;
default: grade="F";
}
System.out.println("[결과]"+jumsu+"점 >> "+grade+"학점");
## ➰ break
#### : switch 구문 또는 반복문을 강제로 종료하기 위해 사용하는 제어문
💡💡 누적값 구하기 연산
sum= sum+i == sum+=i
sum= sum-i == sum-=i