일반적인 코드 실행 흐름
제어문
if
문if (조건식){
조건식의 결과가 true일 때 수행되는 문장;
}
if ~ else ~
문if (조건식){
조건식의 결과가 true일 때 수행되는 문장;
} else {
false일 때 수행되는 문장
}
if ~ else if ~ else ~
if (조건식){
조건식의 결과가 true일 때 수행되는 문장;
} else if(조건식2){
조건식 1의 결과가 false이면서
조건식 2의 결과가 true일 때 수행되는 문장
} else {
조건식 1, 2 모두 false일 때 수행되는 문장
}
주의!
else if
문 보다 else
문이 앞에 오면 오류
if
문if(조건식){
if(조건식2){
} else {
}
} else {
}
switch
문switch (값 또는 수식){
case value1 : 처리할 문장-1; break;
case value1 : 처리할 문장-1; break;
case value1 : 처리할 문장-1; break;
default : 처리할 문장-n break;
}
주의!!!
수식으로 값의 결과가 정수 또는 문자열 또는 문자 값이어야 함 (실수 사용 불가)
case
뒤의 value
는 반드시 하나의 값만 사용
10 < a <= 100 (범위 사용 불가)
case 다음에는콜론(:)
사용
case 띄고 value : (case 다음에 띄어 쓰기 해야 함)
break
문이 없는 경우 해당 case에서 실행이 멈추지 않고 다음 case까지 수행됨
for
문for (초기식; 조건식; 증감식){
반복 수행되는 문장(조건식의 결과가 true일 때 수행)
}
주의!!
for
무한 루프public class ForLoop {
public static void main(String[] args) {
// for 무한 루프
int count = 0;
for (;;) {
count++;
System.out.println(count);
if (count >= 5)
break; // 반복문 종료 조건 : 조건에 해당되면 반복문 종료
}
}
}
while
문(초기값)
while(조건식) {
조건식의 결과가 true일 때
반복 수행되는 문장
증감
} 다음 문장
while 문 주의!!!
(1) 초기값이 없으면 조건을 알 수 없고
(2) 증감식 없으면 반복문을 빠져 나올 수 없어서 무한 반복
while
무한 루프if
문과 break
와 함께 사용while(true){
종료 조건 break;
종료되기 위한 증감
}
public class WhileLoop {
public static void main(String[] args) {
int i=0;
while(true) {
i++;
System.out.println(i);
if(i>=3) break;
}
}
}
do ~while
문break
문switch
문 종료 시 사용if
문과 같이 사용, if 문 조건식에 따라 반복문 종료public class Break {
public static void main(String[] args) {
// 중첩된 반복문에서 break문 사용
// 대문자 -> 소문자
Outter : for (char upper = 'A'; upper <= 'Z'; upper++) { // 대문자 A-Z
for (char lower = 'a'; lower <= 'z'; lower++) {
System.out.println(upper + "-" + lower);
// 소문자 g인 경우 프로그램 중단
if (lower == 'g')
break Outter;
//바깥 for문 중단 : 이름을 Outter로 붙이고 break Outer; 해서 중단
}
}
System.out.println("프로그램 실행 종료");
}
}
주의!!
“break 이름;”
사용continue
문public class Continue {
public static void main(String[] args) {
// Continue
//홀수인 경우 다음 문장 건너뛰고 다음 번에 계속
for (int i = 1; i <= 10; i++) {
if (i % 2 != 0) {
continue;
}
System.out.println(i);
}
}
}