[Java] 자바의 조건문 (if, switch)

2025. 2. 26. 19:07·💻🚀/Java

* Java 문법 종합반 1-7 강의 내용 정리

 

if문, if-else문, else if문, switch


 if문 구조 

✔️ 조건수식이 참(true)일 경우 실행

✔️ 거짓(false)일 경우 실행하지 않음 (에러도  안일어나고 그냥 다음 코드로 넘어가는 것)

if (조건수식) {
	명령문;
}

 if-esle 

✔️ 참이 아닌 경우까지 제어할 때 사용

if (조건수식) {
	명령문;
} else {
	조건수식이 true가 아닐 때 실행할 코드;
    }

 else if 

✔️ 여러 개의 조건  처리 할 때 사용

if (조건수식1) {
	명령문1;
} else if (조건수식2) {
	명령문2;
} else if (조건수식3) {
	명령문3;
}else {
	위 모든 조건수식이 true가 아닐 때 실행할 코드;
    }

 switch 

✔️ 조건식이 아닌 단일값에 따라 코드 실행하기

switch (단일값) {
    case 값1:
        // 값1일 때 실행할 코드
        break;
    case 값2:
        // 값2일 때 실행할 코드
        break;
    default:
        // 위의 값들과 일치하지 않을 때 실행할 코드
}

 

📍 break는 탈출 버튼!

 - 해당 case 실행 후 switch블럭{}을 빠져나가는 기능

 - break가 없다면 다음 case까지 실행됨 (단일값이 1인데, 값1 뒤에 브레이크가 없다면 값2일 때 실행할 코드까지 출력)

 

📍fall-through 현상 주의

 - fall-through 현상이란 break가 없어서 다음 case가 실행되는 것

 - 여러 case를 같은 코드로 처리할 때는 일부러 쓸 수도 있음


 else if와 swich 비교를 쓰는 이유 

📍else if 대신 switch를 쓰는 이유

① 가독성이 좋아짐
   if-else if가 많아지면 코드가 길고 복잡해짐
   switch는 조건별로 정리되어 있어 한눈에 보기 쉬움

② 실행 속도가 더 빠를 수도 있음
  if-else if는 위에서 아래로 조건을 하나씩 검사 → 조건이 많으면 속도가 느려질 수 있음
  switch는 한 번에 해당하는 case로 이동하여 실행 → 더 효율적일 수 있음

③ 코드 유지보수가 쉬움
  새로운 조건을 추가할 때 switch는 case를 추가하면 됨
  if-else if는 여러 조건을 고려하면서 수정해야 함


📍else if문을 쓰기 좋은 경우

 - 범위 조건 (x > 10 같은 것) → switch 사용 불가능!

 - 복잡한 논리 (&&, || 등) → if-else if가 더 적합!

 

📍 switch를 쓰기 좋은 경우

 - 비교할 값이 정수, 문자, 문자열일 때 (int, char, String)
 - 조건이 많고, 값이 정해져 있을 때
 - if-else if가 너무 길어질 때

'💻🚀 > Java' 카테고리의 다른 글

[Java] 자바의 반복문 (for, while)  (0) 2025.02.26
[Java] 연산자 정리 및 우선순위, 문자열 비교하기  (0) 2025.02.25
[Java] 입력, 출력 / print(), nextLine() / System, Scanner 객체  (0) 2025.02.25
[Java] 패키지, 클래스, 변수, 메서드의 이름 설정 규칙  (0) 2025.02.25
[Java] 패키지, 클래스, 변수의 개념, 자료형의 종류와 캐스팅  (0) 2025.02.25
'💻🚀/Java' 카테고리의 다른 글
  • [Java] 자바의 반복문 (for, while)
  • [Java] 연산자 정리 및 우선순위, 문자열 비교하기
  • [Java] 입력, 출력 / print(), nextLine() / System, Scanner 객체
  • [Java] 패키지, 클래스, 변수, 메서드의 이름 설정 규칙
aggeeeee
aggeeeee
  φ(..;) 🔜 \_へ(▭-▭)✨
  • aggeeeee
    🥔 님의 블로그
    aggeeeee
    • 분류 전체보기 (155)
      • Today I Learned (25)
      • 내일배움캠프 (115)
        • 본캠프 과제 (17)
        • 사전캠프 과제 (23)
        • SQL 코드카타 (44)
        • 알고리즘 코드카타 (31)
      • 💻🚀 (15)
        • Java (7)
        • Git & GitHub (1)
        • CS (4)
        • Spring & SpringBoot (3)
  • 링크

  • 최근 글

  • 전체
    오늘
    어제
  • hELLO· Designed By정상우.v4.10.3
aggeeeee
[Java] 자바의 조건문 (if, switch)
상단으로

티스토리툴바