티스토리 뷰

개발/Java Study

4주차 : 제어문

박비버 2021. 2. 9. 22:34

1. 선택문

1. if 문

if(조건식) { 
	// 조건식이 true 일 때 수행됨 
}

true 일때 실행할 내용이 한줄인 경우 괄호{}를 생략할 수 있다.

if(조건식) {
	// 조건식이 true 인 경우
} else {
	// 조건식이 false 인 경우
}
if(조건식1){
	//조건식1 true 인 경우
} else if (조건식2) {
	//조건식2 true 인 경우
} else if (조건식3) {
	//조건식3 true 인 경우
} else {
	//위 조건이 전부 false 인 경우
}

true 인 조건을 만나면 해당 블럭의 내용을 수행 한 후 if-else 문 전체를 빠져 나온다.

if (조건식1) {
	if (조건식2) {
    	// 조건식1 true, 조건식2 true
    } else {
    	// 조건식1 true, 조건식2 false
    }
    
} else {
	// 조건식1 false
}

 

2. switch 문

처리할 경우의 수가 많을 때는 if 문 보다 효율적

조건식과 일치하는 결과가 없는 경우 default 수행

break 구문을 쓰지 않으면 switch 문을 빠져나가지 않고 아래 구문 수행

int num, result;
final int ONE = 1;

switch(result) {
	case '1':	// OK, 문자 상수
    case ONE:	// OK, final 이 붙은 정수 상수
    case "YES":	// OK, 문자열 상수
    case num:	// ERROR, 변수 불가능
    case 1.0:	// ERROR, 실수 불가능
}

조건식을 한번만 계산하면 되므로 더 빠름, 조건식을 잘 만들어서 case 문의 개수를 줄이는 것이 중요.

 

2. 반복문

1. for 문

for (초기화;조건식;증감식) {
	// 조건식이 참일 때 수행됨
}
for (int i=1; i<=10; i++) {}
for (int i=1, j=0; i<=10; i++) {}
for (int i=1, j=0; i<=10; i++, j--) {}

둘 이상의 변수가 필요할 때는 ,(콤마)로 구분한다.

for ( 타입 변수명 : 배열 또는 컬렉션) {
	// 반복할 구문
}
int[] arr = {1,2,3,4,5};
for ( int tmp : arr ) {
	System.out.println(tmp);
}

 

2. while 문

while (조건식) {
	// 조건식의 결과가 true 인 경우
}
int i = 1; // 초기화

while(i<=10) { // 조건식
	// 수행할 구문
    i++; // 증감식
  }

for문은 조건식 생략 가능, while문은 생략 불가 while(true), 이 경우 반드시 while문을 빠져나갈 조건문을 넣어야 함.

 

3. do-while 문

do {
	// 조건식의 연산결과가 참일 때
} while (조건식);

반복적으로 사용자의 입력을 받아서 처리할 때 유용

 

4. break 문

자신이 포함된 가장 가까운 반복문을 벗어남

if 문과 함께 사용하여, 특정 조건을 만족하면 반복문을 벗어나도록 처리함

int sum = 0;
int i = 0;

while (true) {
	if( sum > 100 ) 
    	break;
       
    ++i;
    sum += i;
}

sum이 100을 넘으면 빠져 나간다.

 

5. countinue 문

반복문 내에서만 사용가능

반복문의 끝으로 이동하여 다음 반복으로 넘어감

if문과 함께 사용하여 특정 조건을 만족한 경우에 이후 문장을 수행하지 않고, 다음 반복으로 넘어가서 진행 하도록함

특정 조건을 만족하는 경우를 제외할 때 유용

for (int i = 0 ; i <= 10 ; i++) {
	if( i % 3 == 0 ) {
    	continue; // 3으로 나누어지는 수의 경우 출력하지 않고 넘긴다
    }
    System.out.println(i);
}

 

 

출처 : 

자바의 정석, 남궁 성 지음

 

'개발 > Java Study' 카테고리의 다른 글

6주차 : 상속  (0) 2021.02.13
5주차 : 클래스  (0) 2021.02.12
3주차 : 연산자  (0) 2021.02.03
2주차 : 자바 데이터 타입, 변수 그리고 배열  (0) 2021.02.01
1주차 : Java application의 실행 과정  (0) 2021.01.27
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함