본문 바로가기
개발/자바

(Java) 반복문 / for / while/ do~while

by kakk789 2022. 3. 30.

반복문

for, while, do while 세개가 존재함

1. for 문

for ( 초기값  ;  최종조건식 ; 증감식 ) {
              반복 시킬 명렁어
}

n을 입력 받아 짝수의 개수, 짝수의 합, 홀수의 개수, 홀수의 합 을 구하는 코드

		int even=0;
		int odd=0;
		
		int evenSum=0;
		int oddhSum=0;
		
		Scanner sc = new Scanner(System.in);
		System.out.println("임의의수 N 입력>> ");
		int n = sc.nextInt();
		
		
		for (int i=1 ; i<=n; i++)
		{
			if(i%2==0) {
				even++;
				evenSum += i;
			}
			if(i%2==1) {
				odd++;
				oddhSum += i;
			}
		}
		System.out.println("짝수의 개수 "+even+" 짝수의합 "+evenSum+" 홀수의 개수 "+odd+" 홀수의합 "+oddhSum);

1.1 for each 문

배열의 요소만큼 반복 
int []data = {10, 20, 30, 40, 50};

for ( 자료형 변수명 : data ){
       명령어
}

//-> data 배열의 길이가 5므로 5번 반복

2. while 문

while( 조건식 ) {
      명령어 ~
      증감식
}
		Scanner sc = new Scanner(System.in);
		
		System.out.println("줄수를 입력하세요>> ");
		int rows = sc.nextInt();
		
		System.out.println("칸수를 입력하세요>> ");
		int cols = sc.nextInt();
		
		int i=0;
		int j;
		while(i<rows) {
			
			j=0;
			while(j<cols) {
				System.out.print("*");
				j++;
			}
			i++;
			System.out.println();
		}

3. do ~ while 문

do {
    명령어;
    증감식;
} while ( 조건식);

4. while문, do ~ while문 의 용도 차이

  • while은 조건문이 안맞으면 아예 실행하지 않음.
  • do ~ while은 조건문이 안맞아도 최소 한번은 실행함.(입력 값이 있는 경우 do ~ while을 사용)
		int i=10;
		while(i<=5) {   // 조건문이 안맞음
			System.out.println("hello"); // 출력 안됨
			i++;
		}
		
		System.out.println("---------------------");
		
		int j=10;
		do {
			System.out.println("hello"); // 한번 출력됨
			j++;
		}while(j<=5); // 조건문이 안맞음

같이 사용되는 명령어

break

  • break switch문 반복문에서 사용
  • 해당 switch문이나 반복문을 탈출하는 용도로 사용
주의사항 

1. 오직 if문 만을 break 하는 것은 불가능
if문에서 break는 단지 탈출하기 위한 '조건' 판별하려고 사용

continue

  • continu 반복문에서만 사용이 된다. (switch문에서는 불가능)
주의사항 

1. 반복문 속에 있는 continue 이후의 문장은 동작 하지 않음. (아래 예시 확인)
2. continue를 만나면 반복문의 다음 증감식을 판별하러감 (continue -> 다음 증감식)
3. continue는 pass의 개념
for ( ~ ; 조건 ; i++)
   명령1;
   명령2; 
   if ( 조건 )
        continue; // continue 이후의 명령3, 명령4는 실행하지 않고 증감식이 실행.
   명령3;
   명령4; 
반응형

'개발 > 자바' 카테고리의 다른 글

(Java) 선택문 (if, Switch)  (0) 2022.03.30
(Java) n차원 배열, ArrayList  (0) 2022.03.30
약수 및 소수 구하기  (0) 2022.03.30
중첩 if문 활용도  (0) 2022.03.29
(Java) ShortCut Operation  (0) 2022.03.29

댓글