Home [Java basic] 04. 조건문
Post
Cancel

[Java basic] 04. 조건문

1. 조건문(conditional) 개요

  • 상황별 실행 흐름을 만드는 문법

2. 조건문의 종류

if 문

  • 조건에 따른 수행 여부를 결정
    1
    2
    3
    
      if (조건식) {
          조건식이 참일  실행하는 코드
      }
    

if-else 문

  • 두 조건식 중 하나를 선택할 때 사용
  • 조건식이 참일 때 if, 거짓일 때 else문 코드 수행
    1
    2
    3
    4
    5
    
      if(조건식) {
          조건식이 참일  실행하는 코드
      } else {
          조건식이 거짓일  실행하는 코드
      }
    

else if 문

  • 추가 조건을 붙여야 할 때 사용
  • 위 코드부터 차례로 조건문을 수행
    1
    2
    3
    4
    5
    6
    7
    
      if (조건식 A) {
          조건식 A가 참일  실행하는 코드
      } else if (조건식 B) {
          조건식 B가 참일  실행하는 코드 (A는 거짓)
      } else {
          조건식 A와 B 모두 거짓일  실행하는 코드
      }
    

switch 문

  • 상황 case에 따라 수행 코드를 나누는 문법
  • 예시
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
      if (grade == 'A') {
      System.out.println("장학금 100만원");
      } else  if (grade == 'B') {
      System.out.println("백화점 상품권 50만원");
      } else  if (grade == 'C') {
      System.out.println("도서상품권 30만원");
      } else {
      System.out.println("교수님 격려");
      }
    
    • 위 코드를 아래로 바꿀 수 있다.
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      
        switch (grade) {
        case  'A':
        System.out.println("장학금 100만원");
        break;
        case  'B':
        System.out.println("백화점 상품권 50만원");
        break;
        case  'C':
        System.out.println("도서상품권 30만원");
        break;
        default:
        System.out.println("교수님 격려");
        }
      
  • break는 필요에 따라 생략 가능 → break가 없으면 밑 case까지 실행

삼항 연산자

  • 조건식에 따른 반환값을 지정하는 문법
    1
    
      (조건식) ? A : B;
    
    • 조건식이 참이면 A, 거짓이면 B 반환
  • 예시
    1
    2
    
      int  n = 13;
      String result = (n % 2 == 0) ? "짝수" : "홀수"; // result = "홀수"
    

3. 조건문과 연산자

비교 연산자

  • 두 값을 비교하는 기호
  • 연산의 결과가 참이면 true, 아니면 false를 반환
  • 비교 연산자 종류
    • ==
    • !=
    • >=
    • >
    • <=
    • <

논리 연산자

  • 두 논릿값을 토대로 새 논릿값을 반환하는 기호
  • 논리 연산자 종류
    • AND (&&)
      • 논릿값 둘 다 참일 경우에만 참
    • OR (||)
      • 논릿값이 둘 중 하나라도 참이면 참
    • XOR (^)
      • 두 논릿값이 다르면 참, 같으면 거짓
    • NOT (!)
      • 논릿값의 결과를 반대로 변경
  • 논리 연산자 간 우선순위
    • NOT > XOR > AND > OR

^ 에 관해서

  • 결과값이 boolean type일 때
    • ^는 XOR 연산자
    • XOR 연산자는 두개가 같으면 false 두개가 다르면 true
  • 결과값이 int type 일때
    • 각 비트별로 XOR 연산 되는 결과가 10진수로 변환
    • true= 1, false = 0
    • 예시 ```java System.out.println(“100^200 = “ + (100^200)); // “100^200 = 172” 출력

    /*

    • 100 => 이진수 01100100
    • 200 => 이진수 11001000

    • 10101100 -> 각 비트 별로 XOR 계산 결과
    • 10101100 => 10진수 172
    • ex) 비트 별 XOR 계산 예시
    • 1^0 or 0^1 => 1
    • 0^0 or 1^1 => 0 */ ```
This post is licensed under CC BY 4.0 by the author.