본문 바로가기

패스트캠퍼스 환급 챌린지

[패스트캠퍼스 수강 후기] {자바 인강} 100% 환급 챌린지 {5} 회차 미션

1. do-while 구문

do-while문

  • while문의 경우 조건이 만족하지 않는다면 한번도 반복하지 않을 수 있다.하지만, do while문의 경우는 무조건 한번은 실행되는 반복문이다.

do{ 실행문; }while(조건문);

출처: programmers.co.kr/learn/courses/5/lessons/121

 

자바 입문 - do while문

자바 입문 가장 널리 쓰이는 프로그래밍 언어 Java로 프로그래밍의 기초를 다져보세요. 강의를 다 들었는데, 지금 내가 코딩 테스트 준비를 하고 있다면? 15년차 Java 전문 리더가 직접 이끄는 온라

programmers.co.kr

2. for문

for문: 반복문 중 가장 많이 사용됨. 일정 횟수에 기반한 반복을 구현할 때 효율적임

***********************증감식은 여러개 쓸 수 있음!!****************************

 

for(;;) {

}

while(true) {

}

둘이 같은 뜻!!

 

package loopexample;

public class ForExample {

	public static void main(String[] args) {
		
		int count;
		int sum = 0;
		
		for (count = 1; count <= 10; count++) {
			sum += count;
		}
		System.out.println(sum);
		
		int num =1;
		int total = 0;
		
		while( num<= 10) {
			total += num;
			num++;
		}
		System.out.println(total);
		
		
		for(;;) {
			
		}
		
		while(true) {
			
		}
		

	}

}

 

3.  중첩반복문

반복문이 중첩되어 구현되는 경우, 반복문 내부에 또 다른 반복문이 있음

 

for문이 아니라 while문 일때는 dan, count 초기화 해주어야 함 주의!!

public class NestedLoop {

	public static void main(String[] args) {
		
		int dan = 2;
		int count = 1;
		
		/*for ( dan=2; dan <= 9; dan++) {
			
			for(count = 1; count <= 9; count++) {
				
				System.out.println(dan + "X" + count + "=" + dan*count);
			}
			System.out.println();
		}*/ 
		
		while( dan<=9 ) {
			count=1;
			while(count <=9 ) {
				System.out.println(dan + "X" + count + "=" + dan*count);
				count++;
			}
			dan++;
			System.out.println();	

		}
	}
}

 

4. break문, continue문

먼저 break는 switch문에서 살펴보았듯이 현재의 명령어를 중지시키는 명령어입니다.
loop(반복문)와 switch에서 사용이 가능합니다. switch문에서 사용하는 것은 지난 시간에 보았으니, loop에서 사용해보도록 하겠습니다.
for(int i=1; i<=10; i++){ System.out.println(i); if(i == 5){ break; } }

소스를 보고 예상을 해봅시다.
선언부, 조건부, 증감부를 보면 i는 1이고 10이 될때까지 10번 실행이 되어야 합니다.
1~10까지 숫자가 찍혀야겠군요. 그런데 break문이 있습니다.
i == 5 일 경우에 break가 실행되겠네요.

여기서 == 에 대해 알아야겠군요.
== 는 비교 연산자입니다. A == B 라고 적으면 A와 B가 같다, 라는 조건식이 됩니다. 참이나 거짓이 되겠죠.
참고로 = 와는 구분해야 합니다. = 하나만 쓰면 같다라는 의미가 아니라 대입 연산자가 됩니다.
변수들 선언할 때 많이 봤겠지만, num = 5 라고 적으면 num에 5를 대입한다, 즉 num에 5를 넣는다는 뜻입니다.

그럼 다시 돌아와서 i가 5일때 break가 이루어지겠군요. 숫자를 찍는 게 먼저이니까, 1~5까지 찍히고 break가 실행될 겁니다.
실행결과를 확인해봅시다.

[실행결과]
1
2
3
4
5


예상했던대로 5가 되고 break가 실행되었네요. break가 for문 자체를 중단시켰기 때문에 5 이후의 숫자들은 조건 비교도 하지 않습니다. 말 그대로 for문 자체가 종료되기 때문이죠. while, do while, switch에서도 마찬가지입니다. 완전히 종료가 됩니다.

그러면 이런 요건이 있으면 어떨까요?
1~10까지 중에서 5만 빼고 출력하라.
쉽죠? System.out.println(); 9번 쓰면 됩니다. 하지만 여기서는 loop를 이용하는 방법을 알아봅시다.

이 때 필요한 것이 바로 continue문입니다.
continue는 break와 다르게 loop의 현재 실행부만 생략합니다.
예를 보겠습니다.

for(int i=1; i<=10; i++){ if(i == 5){ continue; } System.out.println(i); }

위의 소스를 보면 아까와 똑같은 조건으로 for문이 돌아갑니다.
실행부는 i가 5일 경우에 continue를 하게 됩니다. 먼저 실행결과를 보겠습니다.

[실행결과]
1
2
3
4
6
7
8
9
10


눈여겨 보시면 1~10중에 5가 출력이 안된 것을 볼 수 있습니다.
바로 continue 때문인데요, 1~4를찍고 loop가 5일때 continue, 5일때의 실행부를 끝내고 증감부가 실행되어 i가 6이 되어 for문은 계속해서 실행이 됩니다. 그래서 10까지 계속해서 찍히는 것이죠.


출처: https://anatomylab.tistory.com/23 [해부학연구실]

 

자바 제어문 break, continue

안녕하세요. ○욕을 제어하지 못하는 남자, 봉합 바보돌입니다. (ex. 식욕, 목욕, 굴욕) 이번 시간에는 제어문에서 빠질 수 없는, 제어문을 한층 더 막강하게 해주는 break와 continue문에 대해 알아봅

anatomylab.tistory.com

 

올인원 패키지 : JAVA 웹 개발 마스터👉https://bit.ly/35aoeAW