Web Developer/JAVA I

3. Loop (반복문) 예제 - while, do-while, for, continue, break

sayitditto 2022. 12. 31. 13:13

I. while문과 복합 대입 연산자

1. 안녕 세번 출력하기

int i = 0;
while (i < 3) {
	System.out.println("안녕 " + i);
	i = i + 1; 
}
아래 1~3번 모두 같은 의미
i = i + 1; 
i += 1; (복합 대입 연산자)
++i; (전위 증감 연산자)
i++; (후위 증감 연산자)

 

2. 뀩 5번 출력하는 세가지 방법

int i = 0;
while (i < 5) {
	System.out.println("뀩: " + i);
	i++;
}
i = 1; // (시작이라 생각 )
while (i <=5 ) { 
	System.out.println("뀩 " + i);
	i++;
}
i = 5; 
while (i > 0) {
	System.out.println("뀩" + i);
	i--;		
}

 

3.  1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = ?

int i = 1;
int sum = 0;
while (i <= 10) {
	sum = sum + i;
	i++;
}
System.out.println(sum);
}

II.  do-while문 & for문

1. do-while : 조건이 거짓이라도 한번은 수행된다. 

예) 아래의 식은 "HI~~0" 만이 출력된다

int i = 0;
do {
	System.out.println("HI~~" + i);
	i++;
}  while (i < -3) ;

2. for 문:  for (초기식;  조건;  증감식) { 수행문 }

예) 뀩 5번 출력하는 세가지 방법

for (int j = 0; j < 5; j++) {
	System.out.println("뀩 " + j);
}

for (int j = 1; j <= 5; j++) {
	System.out.println("뀩" + j);
}

for (int j = 5; j >= 1; j--) {
	System.out.println("뀩" + j);
}

예) 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = ?

int sum = 0;
for(int j = 1; j <=10; j++) {
	sum += j;
}
System.out.println(sum);

III.  break문 & continue문

1. break문: break가 써진 곳의 가장 가까운 반복문에서 빠져나온다

예) hello  world 0 ~ 4 까지 나열 출력하는 두 가지 방법

int i = 0; // 카운팅 변수 
while (true) { 
	if (i == 5) { // -> 5가 되면 나감 
		break; // -> if 랑 상관없이 while문을 빠져가는 것임!!!!!!!
	}
	System.out.println("hello world " + i);
	i++;
}
		
//for 무한루프 (true자리에 아무것도 안넣어도 결과는 같음 
for (int j = 0; true ; j++) {
	if (j == 5) {
		break;
	}
	System.out.println("hello world " + j);
}

2. continue 문: skip. 아래 코드들을 수행하지 않고 즉시 조건을 본다.

예) 1 ~ 10 중에서 4의 배수는 출력하지 말기  (두 가지 방법)

1. if 문으로 처리 
		
for (int j = 1; j <= 10; j++) {
	if (j % 4 != 0) { // 4의 배수가 아닐 때
		System.out.print(j + " ");
	}
}
System.out.println("");
		
2. continue 문으로 처리

for (int j = 1; j <= 10; j++) {
	if (j % 4 == 0) {// 4의 배수일 때는 출력을 건너뛴다. 
	continue;    // 아래 코드들을 skip
	}
System.out.print(j + " ");