홍드로이드의 야매코딩

[ Java ] # 7 while 문 본문

카테고리 없음

[ Java ] # 7 while 문

홍드로이드 2020. 12. 23. 13:15

네 여러분들 안녕하십니까 홍 드로이드 입니다.


이번 시간에는 반복문 종류 중에 하나인 while 에 대해서 알아볼까 합니다.. !


자, 빠른 이해를 위해서 while을 한국어로 번역해보면 '~하는동안' 이라는 뜻이 나옵니다.


그리고, while 문 구현방법을 예제를 통해 살펴 보죠.


public class WhileExample {
public static void main(String[] args) {

int a = 1;
while (a <= 10) {
System.out.println(a);
a++;
}
System.out.println("While 문 탈출 완료.. !");
}
}

정수형 숫자 변수 int a = 1; 이라는 녀석을 만든 뒤

while 문을 다음과 같이 작성해줍니다.. (  ) 안에 들어갈 녀석은 바로 아까 직역 그대로 

a <= 10이 성립되는 동안... 중괄호 내부를 반복 수행해라.. 라는 뜻이 됩니다.. !

중괄호 내부에서는 a++; 이라는 증감 연산자를 활용해서 a의 숫자를 1씩 올려주고 있습니다. a <= 10 이 거짓이 될 때까지요..!

거짓이 되고나면 while 문을 탈출 하게되어 마지막 프린트 문인 While 문 탈출 완료.. ! 쪽을 이어서 실행하게됩니다.




[ 프로그램 실행 결과 ]



자, 한가지 더 해보죠.

이번엔 break 문continue 문을 활용해서 반복문을 좀더 맛깔나게 사용해봅시다 .. !


먼저, break 문 입니다..! 지난 #6 Switch 문 강의를 보시고 오셨다면, break을 보신적이 있으셨을 건데요..! 

break도 한국말로 번역하면 '멈추다''부수다' 라는 의미를 가집니다.


특정 상황에서 중괄호 내부에서 break를 걸면 즉시 멈추고 중괄호를 부수고 나옵니다. 쉽게말해 반복문을 탈출을 하는 것이죠.


백번 설명하는거보다 한번의 예제를 돌리는 것이 빠릅니다. 예제 보시죠.





public class WhileExample {
public static void main(String[] args) {

int a = 1;
while (a <= 100) {
if(a > 10)
break;
System.out.println(a);
a++;
}
System.out.println("While 문 탈출 완료.. !");
}
}

while 문 내부에 if 문 조건을 설정 해두었습니다.

a 가 10보다 커질 경우의 상황에서 바로 밑에 보이시는 break문이 실행되게 구현했는데요.. !


초반에 a는 1로 시작하기 때문에 저 if문을 수행할 수 없습니다. 계속 차례대로 1..2..3..4..5.. 순으로 수행하다가


10 이상의 숫자에 도달 했을때 a 값을 print 하기전에 break문으로 탈출해버립니다. 

while 문 중괄호를 부수고 나가버렸기 때문에 바깥에 있는 While 문 탈출 완료가 수행될 것 입니다.. !




마지막 입니다. continue 문을 활용해 봅시다.. ! continue는 게임 많이 해보신분들은 자주본 영어단어 일텐데

'계속하다' 라는 뜻이지요? 반복문에서의 continue문이 걸리면 해당 줄 아래 구문들은 수행하지않고 다시 다음 반복문 주기로 올라갑니다.


이것 역시 예제로 살펴보겠습니다.


public class WhileExample {
public static void main(String[] args) {

int a = 1;
while (a <= 100) {
a++;
if(a > 10)
break;
if(a % 2 == 0)
continue;

System.out.println(a);
}
System.out.println("While 문 탈출 완료.. !");
}
}


자, 아까 break 걸리는 구문은 무시해버리고 continue 구문 쪽만 집중해봅시다.


if라는 조건문 안에 %로 비교하는 것이 있는데 이것은 나머지 연산 이라고 해서 

a를 2로 나눴을 때 나머지가 0 이라면.. 을 조건으로 표현한 식 입니다.


즉 1씩 증가되는 a라는 정수 변수가 1..2..3..4.. 올라가다가 2로 나눴을 때 0인 수.. 즉, 짝수에 해당 될때

continue를 실행하여 바로 밑에 print 구문을 수행하지않고 다음 반복 주기로 건너 뜁니다.


그렇게 되면 수행 결과는 이렇게 나오게 됩니다.





[ 프로그램 실행 결과 ]


continue 문을 사용하여 짝수 일떄는 print 문 찍는 것을 건너 뛰어버렸으니, 다음과 같이 3..5..7..9 주기의 홀수만 출력 되버린 것입니다.





다음 시간에는 for 문을 이용한 반복문도 알아보겠습니다 !!


강의 내용이 어려우시면 댓글을 남기셔서 질문하셔도 됩니다



항상 봐주셔서 감사드립니다 사랑해요

Comments