728x90

이 강의는 자바의 프로젝트를 어떻게 만드는지, 또한 빌드를 어떻게 하는지에 대한 강의를 진행하지 않는다.

그러나 자바의 기본적인, 그리고 자바에 필수적인 기능들도 분명 존재하고 이 블로그엔 그 작업에 필요한 포스팅도 함께 제공하고 있다.

그 정보를 확인하고 싶다면 여기를 참조하라. 양이 조금 되고 현재진행형으로 늘어나고 있으므로 페이지내의 찾기(ctrl+f 나 cmd+f)로 찾아보도록하자.


전 시간에 여러분들은 if문과 else문, else if문을 배웠다.

그러나 분기문은 한개가 더 존재한다.

바로 특수한 상황에서 사용할 수 있는 switch문이다.


예를 들어서 전시간에 말했던 90점이상은 수, 80점 이상은 우, 70점 이상은 미, 60점 이상은 양, 나머지는 가라고 쓰고싶다.

그러면 아래와 같이사용하면 된다.


public class Main {
public static void main(String[] args) {
int score = 75;
switch (score / 10) {
case 9:
System.out.println("수");
break;
case 8:
System.out.println("우");
break;
case 7:
System.out.println("미");
break;
case 6:
System.out.println("양");
break;
default:
System.out.println("가");
}
}
}


위를 실행하면 75면  미이므로 미가 출력된다.


switch(로직) {

case a:

a상황

case b:

b상황

case c:

c상황

case d:

d상황


...


default:

디폴트상황

}

if캐이스 중에서 매우 특이한 상황이지만 만약 if문이 단순비교만하고 갯수가 무지하게 많다면 switch문을 사용하는게 훨씬 가독성이 있다.

물론 로직이 복잡해진다면 사용하기는 조금 힘들다.


여기서 각가의 캐이스 마다 break가 있다.

이 break구문이 의미하는 바는 해당 캐이스만 실행하고 종료해라는 것이다.

만약에 break가 없다면 해당 캐이스에 진입한 후 아래의 모든 캐이를 실행하게 된다.

백문이불여일견이다. 한번 실행해보자.


public class Main {
public static void main(String[] args) {
int score = 75;
switch (score / 10) {
case 9:
System.out.println("수");
case 8:
System.out.println("우");
case 7:
System.out.println("미");
case 6:
System.out.println("양");
default:
System.out.println("가");
}
}
}


위와는 달리 case7부터 아래를 모두 실행하게 된다.
따라서 만약 한 캐이스만 딱 하고싶다면 break를 걸어주게된다.
그리고 정말 특이한 상황이 아니라면 보통은 break를 건다.


'Programming > Java' 카테고리의 다른 글

[Java-08]배열  (0) 2017.09.30
[Java-07]반복문  (0) 2017.09.29
[Java-05]조건문  (0) 2017.09.29
[Java-04]연산자  (0) 2017.09.29
[Java-03]자료형  (0) 2017.09.29

+ Recent posts