본문 바로가기
뉴렉처 과정 기록 (Backend)/JAVA

03/08 JAVA 제어 구조(switch, do-while, for)

by yeonee3219 2021. 3. 8.

 

선택문 (switch)

 

 

 

 

 

menu는 if, else if문으로 했을때 문제가 있다

 

 

 

 

 

 

menu로 돌아갈 수 있는 분기가 필요  -> break; 

 

 

 

 

 

메뉴는 무조건 switch를 사용하자

 

break; 를 써주어서 메인 메뉴로 돌아갈수 있는 분기를 만들어주고 선택할 수 있게 함

 

 

 

 

 

 

이때,

 

반복이 진행될 필요가 없을 때 , 한번에 벗어나고 싶을때 (switch를 벗어난 후 while문까지 벗어나고싶을때)

break를 손보면 된다.

 

(위의 사진에서 bye!가 출력된 것은 case3에서 more에 false를 선언해주어서 while문을 종료시켜주었기 때문이다) 

 

 

 

 

switch안에서만 벗어날 수 있는 break

 

 

 

 

switch내에서도 라벨을 이용하면 라벨이 있는 곳까지 (break) 벗어날 수 있다.

 

 

 

...

 

more 로 true, false 값 입력받지 않고 break로 벗어나 준다

 

 

 

 

 

 

 

if 문 vs  while

 

if 의 조건문 검사 -> 종속문자 실행 -> 다음문자 (한번 검사)

while의 조건문 검사 -> 종속문자 실행 -> while 조건문 검사 (반복적 검사)

 

 

 

 

 

 

조건문을 만들어보자

 

 

내가 해본 것

( kor < 0 | 100 < kor ) 이게 좀더 보기 좋다

 

 

 

 

하지만 if로는 반복되는 "유효범위 벗어남"을 잡을 수 없다 (if문을 여러 번 복사붙여넣기 할 수 없어)

 

이럴 때 while 사용

 

 

 

 

 

유효된 범위의 값을 입력할 때까지 무한 반복 하게 된다.

 

 

 

 

 

 

 

단순히 붙여넣기 해서 코드를 복사하는 경우에는 한번의 수정으로 해결될 수 없다

한번의 수정으로 같은 코드들이 수정될 수 있도록 만들어야 함->집중화(제어문을 통한)

 

 

 

 

 

do-while문 사용해주자 왜?

 

->

이러한 형식

 

 

 

 

 

*

copyprogram의 while문도 do-while로 바꿔보았다

 

 

이때, do안에서 int b선언하면 while이 못알아들으니 밖에서 미리 선언해줄 것

 

 

 

 

 

 

 

 

for 문

 

특정 수만큼 반복되는 일이 많기 때문에 아래의 패턴을 외워 사용하면 된다

 

 

 

 

 

조작의 3요소가 한눈에 보이는 게 좋겠다 -> for문을 이용하여 모아줌

 

 

 

3요소 (초기값, 조건검사, 실행)

이 형태 외울것

 

 

 

 

 

for문 사용으로 출력부분을 세 번 반복할 수 있다.