개발일지/일간회고 (TIL)

Java 삼항연산자, 스위치

윤승임 2022. 12. 22. 22:08

오늘은 Java 삼항연산자와 스위치에 대해 배웠다.

알고리즘 문제를 파이썬으로 풀다보니 정작 자바에 대해서는 소홀했던 것 같다.

자바를 아끼자!

 

삼항연산자

자바에서 삼항 연산자는 조건식을 기반으로 결과를 반환하는 연산자이다.

다음은 삼항 연산자의 기본 구조이다!

(조건식) ? 참일 경우 실행할 코드 : 거짓일 경우 실행할 코드

삼항 연산자는 조건식을 기반으로 계산된다.

 

예를 들어, 다음 코드는 x가 짝수일 경우 "짝수"를, 홀수일 경우 "홀수"를 출력한다.

int x = 5;
System.out.println((x % 2 == 0) ? "짝수" : "홀수");

위 식에서는 "홀수"가 출력된다.

삼항 연산자는 조건문을 간단하게 대체할 수 있는 기능을 하므로 코드가 간결해지고 읽기 쉽게 되지만 조건식이 복잡한 경우에는 이해하기 어려울 수 있고, 조건문은 여러 문장을 실행할 수 있지만 삼항 연산자는 한 개의 값만 선택할 수 있기 떄문에 이런 경우에는 조건문을 사용하는 것이 좋다.

 

Switch

switch문은 자바에서 여러가지 조건 중 하나를 선택할 때 사용하는 제어문이다.

switch문을 사용하면 if-else문 보다 간결한 코드를 작성할 수 있다.

다음은 switch문의 기본 구조이다!

switch(식) {
  case 값1:
    식이 값1일 경우 실행할 코드;
    break;
  case 값2:
    식이 값2일 경우 실행할 코드;
    break;
  ...
  default:
    식이 어떤 값과도 일치하지 않을 경우 실행할 코드;
}

 

 

Switch문의 예시이다.

public class Main {
  public static void main(String[] args) {
    int month = 8;
    String monthString;
    switch (month) {
      case 1:  monthString = "January";
               break;
      case 2:  monthString = "February";
               break;
      case 3:  monthString = "March";
               break;
      case 4:  monthString = "April";
               break;
      case 5:  monthString = "May";
               break;
      case 6:  monthString = "June";
               break;
      case 7:  monthString = "July";
               break;
      case 8:  monthString = "August";
               break;
      case 9:  monthString = "September";
               break;
      case 10: monthString = "October";
               break;
      case 11: monthString = "November";
               break;
      case 12: monthString = "December";
               break;
      default: monthString = "Invalid month";
               break;
    }
    System.out.println(monthString);
  }
}