전체 FLOW
chapter04 조건문과 반복문
1.조건문-if,switch
-1.1 if문
-1.2 if-else문
-1.3 if-else if문
-1.4 중첩 if문
-1.5 switch문
2. 반복문-for,while,do-while
-2.1 for문
-2.2 while문
-2.3 do-while문
-2.4 break문
-2.5 continue문
-2.6 이름 붙는 반복문
public class switchEx{
public static void main(String[] args){
int num, result;
final int ONE =1;
//상수는 보통 대문자로 표현
....
switch(result){//switch(조건식)
case '1'://;아님//문자리터럴 OK 정수 49와 동일
case ONE: // 상수 가능 OK
case "YES"://문자열 리터럴 가능OK
// case '1':case ONE:case "YES": 같은말
//case num//Error. 변수 불가능
//case 1.0//Error . 실수 불가능
break;
case '2'
break;//switch문 탈출
default
break;//안써도 됨. 어차피 마지막
}
}
}
이 파트에서 배웠던 함수
①초기화는 둘 이상의 변수가 필요할 때 콤마를 통해 초기화할 수 있으나, 둘 이상의 변수는 타입이 같아야 한다.for(타입 ①초기화;②조건식;④증감식){
③수행할 문장}
for(타입 변수명;배열 또는 컬렉션){
반복할 문장
}
for(int i=0;i<arr.length;i++)
{ System.out.println(arr[i]);
}
//같은 문장
for(int tmp:arr)
{ System.out.println(tmp)
}
'''
while(조건식_생략불가){
//조건식의 연산결과가 true인 경우 반복될 문장
}
while(i++!=0)//이 조건식을 벗어나면 i는 증가한다.
{
}
while(++j!=0)//먼저 i는 증가한 후 조건식을 만족하는지 평가한다.
{
}
do{
}while(조건식) ;
2.4 break문
break문은 자신이 포함된 가장 가까운 반복문을 벗어난다!!
혹은 switch문 벗어나기
"만약에 두개의 반복문을 벗어나야 하는 상황이라면??"
즉 중첩된 반복을 벗어나야 한다면??
그럴 때는 이름 붙는 반복문을 사용한다.!!
2.5 continue문
continue는 continue가 등장하는 순간 그 아래 문장을 실행하지 않고
반복문의 처음으로 돌아가 다시 실행한다.
¹ for(타입 초기화;조건식;증감식)
² { A문장;
³ if(조건식)
⁴ continue;
⁵ B문장;}
순서: 1234 ->1
혹은 순서: 125 ->1
2.6 이름 붙는 반복문
이름 붙는 반복문은 살짝 헷갈릴 수 있는게
이름이 반복문 앞에 있다.
그래서 저기로 돌아간다는 건가? 라는 의문점이 들 수 있으므로
오늘 정확히 배우고 간다.
¹ outer:
² for (타입 초기화;조건식;증감식){
³ for(타입 초기화;조건식;증감식{
⁴ if(조건식)
⁵ continue;// 3번으로
⁶ else if(조건식)
⁷ coninue outer ;// 2번으로
⁸ else if(조건식)
⁹ break; // 13번으로
¹⁰ else if(조건식)
¹¹ break outer;// 15번으로
¹² }
¹³
¹⁴}
¹⁵