중첩 반복문이란?
- 반복문 내부에 또 다른 반복문이 있음
- 여러 겹으로 반복문을 겹쳐서 구현 가능 (단 수행시간에 문제가 발생할 수 있음)
- 외부 반복문과 내부 반복문 간의 변수 값 변화에 유의 하며 구현하여야 함
구구단을 for와 while로 구현해 보자
package ch20;
public class NestedLoopTest {
public static void main(String[] args) {
int dan = 2;
int count = 1;
for( ; dan <= 9; dan++) {
for(count = 1; count <=9; count++) {
System.out.println( dan + "X" + count + "=" + dan * count);
}
System.out.println(); // 개행
}
dan = 2;
while( dan <= 9 ) {
count = 1;
while (count <= 9) {
System.out.println( dan + "X" + count + "=" + dan * count);
count++;
}
dan++;
System.out.println(); //개행
}
}
}
break문 사용하기
- 감싸고 있는 제어문의 블록을 빠져 나오는 기능 (switch문 에서도 사용)
- 반복문에서는 주로 조건문(if)와 같이 사용하여 조건에 해당되는 경우 반복 수행을 멈추고 반복문 외부로 수행이 이동
- 여러 반복문이 중첩되어 있는 경우엔 break 문이 포함되어 있는 반복문만 빠져 나옴
break문 예제
- 1부터 숫자를 더하여 100이 넘는 순간의 그 숫자와 합을 출력하세요
package ch20;
public class BreakTest {
public static void main(String[] args) {
int sum = 0;
int num;
// for (num = 1; sum < = 100; num ++) {
for( num = 1; ; num++) {
sum += num;
if( sum >= 100)
break;
}
System.out.println(sum);
System.out.println(num);
// 14까지 더하면 100보다 큰 순간이 된다
}
}
continue문 사용하기
- 반복문 내부에서 조건문(if)와 같이 사용하며, 조건이 맞는 경우(true 이면) 이후 반복문 블럭 내부의 다른 수행문들을 수행하지 않음
continue문 예제
- 1부터 100까지 숫자 중 3의 배수를 출력하세요
package ch21;
public class ContinueTest {
public static void main(String[] args) {
int num;
for( num = 1; num <= 100; num++) {
if( (num % 3) != 0) continue;
System.out.println(num);
}
}
}
'|Backend.DevLog > JAVA' 카테고리의 다른 글
12. Java - 함수, 메서드 , 인스턴스 , 스택, 힙 (0) | 2022.06.29 |
---|---|
11. Java 객체지향 프로그램 (0) | 2022.06.29 |
09. Java 반복문 - while, for 문 (0) | 2022.06.28 |
08. Java 조건문 - if , switch-case 문 (0) | 2022.06.28 |
07. Java 연산자-3 (조건 연산자, 비트 연산자) (0) | 2022.06.23 |
댓글