- for문 break, continue2024년 07월 09일
- chantleman
- 작성자
- 2024.07.09.:41
continue: 해당 루프만 종료
System.out.println("2-9 입력:"); int n=sc.nextInt(); for(int i=2;i<10;i++) { if(i==n) continue; for(int j=1;j<10;j++) { System.out.println(i+"*"+j+"="+i*j); } System.out.println(""); }
- 구구단 코드인데 continue를 쓰게 되면 n단만 제외하고 나머지는 다 출력됩니다.
break: 반복문 자체를 종료
System.out.println("2-9 입력:"); int n=sc.nextInt(); for(int i=2;i<=9;i++) { for(int j=1;j<10;j++) { System.out.println(i+"*"+j+"="+i*j); } System.out.println(""); if(i==n) break; // 반복문 자체를 종료 }
- break를 쓰게 되면 n단 이후의 모든 것들이 다 종료됩니다.
n단 전까지만 출력
for(int j=0;j<10;j++) { for(int i=0;i<10;i++) { if(i==4) break; System.out.println(j+","+i); } }
만약 이중for문에서 두번째 for문 안에 break를 쓰게 되면 두번째 for문만 반복문을 중단합니다.
전체 break를 하고싶다면 아래 두가지 방법이 있는데
for(int j=0;j<10;j++) { boolean chk=false; for(int i=0;i<10;i++) { if(i==4) { chk=true; break; } System.out.println(j+","+i); } if(chk) break; }
첫번째 방법은 어렵고 복잡합니다.
두번째 방법은 for문의 이름을 설정하는 라벨링 작업을 합니다.
END : //라벨링. for문의 이름 붙임. end말고 아무거나 해도 됨 for(int j=0;j<10;j++) { for(int i=0;i<10;i++) { if(i==4) break END; //END라는 반복문을 종료하겠다. System.out.println(j+","+i); } }
우리는 END라고 라벨링을 했지만 END말고 아무거나 이름 붙여도됩니다.
728x90'자바' 카테고리의 다른 글
배열 (0) 2024.07.10 스택, 힙, equals(), == (0) 2024.07.10 이중 for문 예제 (0) 2024.07.08 시와 분을 입력받고 30분 뒤, 30분 전 시간 출력하는 예제 (0) 2024.07.05 대문자 소문자로 바꾸기 예제 (1) 2024.07.03 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)