Post

자바 기본4 - 조건문과 반복문

조건문

여러 조건들을 판별하여 상응하는 조건에 문장을 실행한다. 조건문에는 if문과 switch문이 있다.

if문

  • 조건을 boolean의 true와 false로 판별하여 문장을 만든다.
  • if(조건) : 조건이 true이면 진행 false이면 진행하지 않는다.
  • else if(조건) : 조건을 다양하게 선택할 때 사용되며 상위 if문에서 false가 반환되었을 때 실행된다.
  • else : 상위의 모든 조건을 만족하지 않을때 else문이 진행된다.
  • if문 안에 또다른 if문 중첩이 가능하다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int a = 5;
int b = 10;

//false가 반환되어 실행되지 않는다.
if(a > b){
    return a;
}

//위의 if문이 false이므로 else if 문이 실행되고 마찬가지로 false 이므로 다음으로 넘어간다. 
else if(a == b){
    return 0;
}

//상위의 모든 조건을 만족하지 않으면 else 문이 실행된다.
else {
    return b
}

switch문

  • if문과 유사하나 int형 범위 이하의 정수만 조건으로 지정 가능하다.
  • case를 지정하여 여러가지 조건들을 판별할 수 있으며 break를 만나면 조건문을 빠져나온다.
  • default를 지정하여 일치하는 조건 case가 없으면 default 문을 실행하게 할 수 있다.
  • switch문 안에는 다른 switch문을 중첩할 수 있고 if문 사용도 가능하다.
  • 조건이 많으면 많을수록 switch 문을 사용하는 것이 좋다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
String sName = "C";

switch(sName) {
    case "A":
        return "A"
        break;

    case "B":
        return "B"
        break;

    case "C":
        return "C"
        break;

    default:
        return "A"
}

반복문

반복문에는 for문과 while문이 있다.

for문

  • iterator 포로토콜을 따르고 있다.
  • 반복 횟수가 중요한 경우에 for문을 사용한다.
  • for(초기값; 조건식; 증감식) 형태가 Default for문이다.
  • for문 안에 다른 for문이 포함 가능하다.
1
2
3
4
5
6
7
8
9
for(int i=0; i<5; i++){
    if(i == 4){
        break;    // break문을 만나면 반복문을 빠져나오고 반복문은 끝이난다.
    } 
    else if (i == 3) {
        continue;    // continue문을 만나면 아래는 수행되지 않고 반복문 맨 끝으로 이동하여 다음 반복문이 수행된다.
    }
    System.out.println("i = " + i);    // 0,1,2 만 print 된다.
}

while문

  • 특정 조건을 지정하여 반복문을 수행한다.
  • 최소 한번은 반복문이 수행될 것을 보장한다.
  • while(조건식) 또는 do{}while(조건식) 의 형태로 실행할 수 있다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int i=0;

//i가 5보다 크지 않으면 계속해서 반복된다.
while(i < 5){
    i++;    // 1씩 증가
    if(i == 3){
        continue;    //반복문 맨 끝으로 이동하여 다음 반복문이 수행된다.
    }
    System.out.println("i = " + i);
}

int j=10;

// j가 5보다 크면 계속해서 반복된다.
do {
    j--;
    if(j == 6){
        break;    //break문을 만나서 반복문을 빠져나온다.
    }
} while(j > 5)
This post is licensed under CC BY 4.0 by the author.