Java/공부

7. 분기문

pakms980319 2024. 3. 5. 10:40

1. If 문 : If 문 단독 사용

  • if (a > 0) { System.out.println("Hi, a higher than 0"); }


2. If 문 : If ~ Else 문

  • if(a > 0) { ... } else { System.out.println("Hello, a equal or lower than 0"); }
  • 사용 분야: 특정 조건이 참(true)일 때 처리해야 할 일과 거짓(false)일 때 처리해야 할 일이 다르면 사용한다.
  • 사용 예: 사용자로 로그인할 때 아이디와 비밀번호가 맞으면 메인 화면을 표시하고, 그렇지 않으면 오류 메시지를 출력한 후 다시 로그인 화면을 표시한다.


3. If 문 : If ~ Else if ~ Else 문

  • if (a > 0) { ... } else if (a == 0) { ... } else { System.out.println("Hi, a lower than 0"); }
  • 사용 분야: 여러 조건이 있고 ,각 조건마다 처리해야 하는 내용이 다를 때 사용한다. 조건이 세분화 되어 있으면 else if 문을 여러 개 사용할 수 있다.
  • 사용 예: 쇼핑몰 회원을 네 등급으로 나누고, 등급별 할인율이나 쿠폰을 다르게 적용할 때 사용한다.


4. If문 : 중첩 If 문

  • if (a > 0) { if (a == 5) { System.out.println("a는 5입니다."); } } else { ... }
  • 사용 분야: 특정 조건이 성립되어 또 다른 조건들을 연속적으로 체크해야 할 때 사용한다.
  • 사용 예: 회원 로그인을 할 때 아이디가 맞는지 먼저 비교한 후 맞으면 비밀번호를 비교한다. 또 다른 예로는 신용카드를 재발급할 때 신원 확인을 완료한 후 신용도를 비롯한 재발급 조건을 체크한다.


5. Switch 문

  • switch 문은 if ~ else if 문과 유사한 구조로, 여러 조건 중 하나를 선택할 수 있게 하는 분기문이다.
  • 사용 분야: 여러 조건별로 처리하는 방법이 다를 때 사용한다.
  • 사용 예: 쇼핑몰 회원을 네 등급으로 나누고 ,등급별로 할인율이나 쿠폰을 다르게 적용할 때 사용한다.

 

5-1) Switch 문에 break 문이 없을 때

프로그램을 수행할 때 상황에 따라 switch 문에서 break 문을 생략할 수 있다. 그러나 실수로 break 문을 누락했다면 그 다음에 오는 case 문의 명령어들이 연속적으로 수행되어 의도하지 않은 결과를 초해라 수 있으므로 주의해야한다.

 

예시
실행 결과

 

원하는 결과는 case 2의 "2 입니다." 출력문 하나 인데, break문을 추가 안하니 아래의 명령문들도 모두 실행되버렸다.

 

5-2) 해결법

수정 예시
수정된 명령문의 실행결과

 

break문을 추가하면 문제가 해결된다.


'Java > 공부' 카테고리의 다른 글

9. 메서드  (0) 2024.03.05
8. 반복문  (0) 2024.03.05
6. 연산자  (0) 2024.03.05
05. 변수와 자료형  (0) 2024.03.04
04. 이클립스로 자바 프로젝트 생성  (0) 2024.03.04