본문 바로가기
Programming/JAVA

5-3 for, while, do~while

by CGS 2018. 10. 13.


public class WhileBasic {


public static void main(String[] args) {

// TODO Auto-generated method stub

int num = 0;

while(num<5) {

System.out.println("I like Java " + num);

num++;

}

}


}


I like Java 0

I like Java 1

I like Java 2

I like Java 3

I like Java 4


while문은 반복조건을 주고 그 조건에 맞게 반복해서 실행합니다.


위 예제에서는 0으로 초기화 되어있는 상태의 num에 5보다 큰 값이 될때까지 계속해서 반복 실행을 합니다.


while 블록 안에 num++로 인해 1이 증가하고 다시 while문의 처음으로 돌아가서 값을 비교합니다.


처음엔 num이 0이고 5보다 작으므로 실행 후에 값이 1 증가하여 num은 1이 되고, 역시 5보다 작으므로 2, 3, 4, 5가 된 후에 5가 되었을때 비교하고 5보다 작은 값이 아니므로 while 블록을 빠져나옵니다.


 조건이 참일때 실행되고, 조건이 거짓이 되면 while 블록을 탈출하게 됩니다.




public class DoWhileBasic {

public static void main(String[] args) {

int num = 0;

do {

System.out.println("I like Java" + num);

num++;

} while(num<5);

}


}


I like Java0

I like Java1

I like Java2

I like Java3

I like Java4



while과 do~while의 차이는 반복조건의 검사 시점에 있습니다.

while문은 반복조건을 검사한 다음에 실행여부를 결정하고, do~while문은 일단 먼저 한번 실행한 후에 반복의 조건을 검사합니다.



public class ForBasic {

public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i=0; i<3; i++) {
System.out.println("I love Java" + i);
}

}

}

I love Java0
I love Java1
I love Java2

for문 또한 반복을 수행합니다.

for문의 괄호안을 보면,
int i=0; 은 반복의 횟수를 세기위한 변수입니다.(전역변수로 먼저 선언해두고 i=0; 이라고 선언할수도 있습니다.)
i<3; 은 반복의 조건입니다. 3보다 커지면 빠져나오게 됩니다.
i++ while문의 끝에 부분에 썼던거처럼 반복하는 변수의 값을 1 증가시켜주는 연산입니다.

반복은 이런식으로 선언하여 사용할 수 있습니다.

또한 for문은 콤마 연산자(,)를 이용해서 for문 하나에 두개의 변수를 가지고 반복을 수행할 수 있습니다.



'Programming > JAVA' 카테고리의 다른 글

5-5 반복문의 중첩  (0) 2019.03.25
5-4 continue & break  (0) 2019.03.09
5-2 switch / break  (0) 2018.09.17
5-1 if~else  (0) 2018.09.16
4-3 비트와 관련이 있는 연산자  (0) 2018.08.27