되자!백엔드개발자
Java(자바) - 이름 붙은 반복문 본문
코딩을 하다 보면 중첩 반복문을 쓸 때가 많은데
내부 반복문에서 break나 continue를 써도 외부반복문에선 적용이 안되서 불편할 때가 있다.
나는 이 경우 그동안 int flag 를 선언해서 조건문과 함께 사용했는데 반복문에 이름을 붙여 사용할 수 있다는 것을 알게 되어서 공유 겸 써본다.
(반복문 이름) : (반복문){
...
break (반복문 이름);
continue (반복문 이름); // continue는 잘 안씀
}
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
int menu = 0, num = 0;
Scanner sc = new Scanner(System.in);
outer:
while(true) {
System.out.println("1. square, 2. square root, 3. log");
System.out.println("원하는 메뉴를 입력하시오.(종료 0)");
menu = Integer.parseInt(sc.next());
if(menu == 0) {
System.out.println("프로그램을 종료합니다.");
break; // while 종료
}else if(!(1<=menu && menu <= 3)) {
System.out.println("다시 선택하시오");
continue;// while 다시 시작
}
for(;;) {
System.out.println("계산 값을 입력하시오.(종료:0, 전체종료:99)");
num = Integer.parseInt(sc.next());
if(num == 0)
break; // for문 종료
if(num == 99)
break outer; // while문 종료.
switch(menu) {
case 1:
System.out.println("result = "+num*num);
break;
case 2:
System.out.println("result = " + Math.sqrt(num));
break;
case 3:
System.out.println("result = " + Math.log(num));
break;
}
}
}
}
}
'개발공부 > JAVA' 카테고리의 다른 글
Java(자바) - 다형성3(매개변수의 다형성) (0) | 2022.08.11 |
---|---|
Java(자바) - 변수의 초기화(명시적 초기화, 초기화 블럭) (0) | 2022.08.10 |
Java(자바) - C/C++과 다른 거 (0) | 2022.08.05 |
Java(자바) - 메소드, 변수 관련 용어 정리 (0) | 2022.08.04 |
Java(자바) - 가변인자인 Ellipsis(생략) 파라미터 '...' (0) | 2022.08.04 |