자바 반복문




for 반복문


for(초기화; 조건식; 증감식){

반복할 코드.

}


for(int i = 0 ; i < 10 ; i++){

int total = temp + i;


System.out.println("합계는 " + total +" 입니다.");

}


합계는 (0부터 9까지 더한 수) 입니다.


초기화로 변수 i 값을 초기화 하고 증감식에 i 값을 증가시켜 조건식까지 값을 증가시켜 반복한다.

조건식에 변수 i값이 true 면 반복, false면 for문은 종료된다.




int 구구단수 = 2;

System.out.println(구구단수 + " 구구단");


for(int i = 1 ; i< 10 ; i++){


System.out.println(구구단수 +" x " + i  + " = " +(구구단수*i) );

}


간단한 구구단 출력 이다. 

i 값은 1부터 시작하여 10보다 작은 9까지 반복하고 종료되는데 

구구단수에 입력된 값과 i값을 곱하여 1부터 9까지의 값을 곱한것을 출력한 후 구구단을 종료한다.

조건식에서 i < 10 대신 i <= 10 으로 변경하면 i는 10까지 반복이 가능하다.




while 반복문


while(조건식){

반복할 코드

}


조건식에 true 일 경우 반복한다. 조건식에 false가 되면 반복은 종료된다.



int count = 0;


while(count < 10){

System.out.println("count는 " + count + " 입니다.");

// 만약 count를 증가시키는 코드가 없다면.

// count는 0이므로 무한 반복을 한다.

count++

}

반복의 상황을 직접 제어 해야 한다.



boolean end = true;

int i = 0 ;

while(end){


i++;


System.out.println(i +"는 증가했습니다.")

if(i == 100){

end = false;

System.out.println("반복문이 종료 되었습니다.")

}

}


조건식에 boolean 변수를 사용할수도 있다.




do{

최초 1회 실행되고 다음 조건식을 체크한다.

반복할 코드.


}while(조건식)



do{} 를 최초 실행한 다음 조건식을 확인하여 코드를 반복한다.



int i = 1;


do{


System.out.println()

// 변수를 조건식에 맞게 제어를 하지 않으면 무한 반복한다.

// i가 10이상일 경우  1회만 실행되고 종료되지만 10이하 일경우

// 조건에 맞게 제어를 해야 반복문을 끝낼수 있다.

i++;

}while(i < 10)




boolean end = true;

        

int i = 0;

do {

    System.out.println(i);

    

    if (i == 10) {

        end = false;

    }

    i++;

} while (end);


boolean 변수를 사용하여 종료될 시점을 정한다음 boolean 변수의 값을 변경하여 반복문을 종료한다.

반복문을 사용하기 적당한 예제는 숫자 맞추기 게임 이다.

입력되는 코드를 입력하여 do{} 위에 만들어진 난수와 비교하여 숫자 맞추기를 시도하고 몇번을 맞추었는지

체크 할수도 있다.




향상된 for문 (for each 문)

java 1.5 부터 지원 되며

배열 또는 컬렉션 사용.


for(대입받을 변수 정의 : 배열 또는 컬랙션){

코드

}



String[] arr = ["x", "y", "z", "1", "2", "3"]


for (String str : arr) {

System.out.println(" " + str);

}

배열 또는 컬렉션의 사이즈 만큼 반복하며 대입받을 변수는 반복될때마다 초기화 되고 해당 배열 또는 컬렉션 인텍스를 가진다.



'Java > study' 카테고리의 다른 글

Retrofit, RxJava, Android Project  (0) 2019.01.30
자바 제네릭  (0) 2018.09.18
자바 분기문(break, continue)  (0) 2018.08.14
자바 제어문  (0) 2018.08.03
자바 자료형 종류  (0) 2018.07.26

+ Recent posts