SHUSTORY

04-1 조건문 본문

프로그래밍/JAVA

04-1 조건문

어서오시우 2023. 2. 20. 02:18
728x90

if문과 if-else문

if문

 

조건식에는 결과가 참, 거짓으로 판별되는 식이나 참, 거짓의 변수를 가진 변수, 상수를 사용할 수 있다.

if문 다음에 항상 else문이 와야 하는 것은 아니다.

 

예제01

 

수행문이 한 개인 경우에는 중괄호를 사용하지 않아도 오류가 발생하지 않지만 두 개 이상인 경우에는 반드시 중괄호를 사용하여 조건식을 만족할 때 괄호 안 문장을 수행하라고 표시해주어야 한다.

하지만 중괄호로 표시해주는 것이 가독성이 좋으며 이후 수행문을 추가할 때 오류를 방지할 수 있으므로 제어문을 사용할 때는 중괄호를 사용하는 것을 권장한다.

 

if-else if-else문

 

if-else if-else문에서는 하나의 조건식을 만족하면 이후의 조건은 비교하지 않는다.

 

예제02

 

출력문에서 +를 사용하면 여러 단어를 연결하여 출력할 수 있다.

12행에서 age >= 8 && age < 14라고 쓰지 않은 것은 앞서 말했듯이 if-else if-else문에서는 하나의 조건을 만족하면 다른 조건은 더 이상 비교하지 않기 때문이다. 즉, 첫 번째 조건식에서 age < 8을 비교했기 때문에 이는 이미 처리된 것이다.

if문을 연달아 쓰지 않고 if-else문을 사용하는 이유는 if-else문은 하나의 조건을 만족하면 나머지 조건을 비교하지 않고 다음 수행문으로 넘어가기 때문이다.

만약 if문만으로 구성되어 있다면 코드는 조건마다 각각 비교하므로 원하지 않는 출력 결과가 나올 수 있다.

 

 

조건문과 조건 연산자

조건문
조건 연산자

 

같은 내용을 위와 같이 두 가지 코드로 구현할 수 있다.

if-else문이 가독성은 더 좋지만 위와 같이 간단한 조건문이고 선택이 두 가지만 있을 경우 종종 조건 연산자를 사용하기도 한다.

 

 

switch-case문

switch-case문

 

조건식의 결과가 정수 또는 문자열 값이고 그 값에 따라 수행되는 경우가 각각 다른 경우에는 switch-case문으로 구성하는 것이 코드도 깔끔하고 가독성도 좋다.

case문에는 여러 문장이 있어도 { }를 여러 번 사용하지 않는다.

if-else 문장에서 else 역할을 하는 것이 default이다. switch-case문에서 default는 생략 가능하다.

break문은 switch-case문의 수행을 멈추고 빠져나가도록 만든다. 만약 break문을 작성하지 않는다면 조건에 만족하는 값의 수행문을 수행하더라도 switch-case문을 빠져나오지 못해 잇따라 나오는 문장까지 모두 수행되어 마지막 수행문의 결괏값을 출력하게 되므로 조건에 맞는 수행문을 작성한 후 반드시 break문을 작성해 주어야 한다.

 

예제03

 

case문 동시에 사용하기

case문 동시에 사용하기

case문은 다르지만 같은 수행문이 반복되는 경우 위와 같이 case문을 동시에 작성하여 하나의 수행문을 수행하도록 구현할 수 있다.

 

 

case문에 문자열 사용하기

예제04

equals( )메서드를 사용하여 문자열을 비교했던 이전과 달리 자바 7부터는 case문에 문자열을 직접 사용할 수 있게 되었다.

equals( ) 메서드

 

'프로그래밍 > JAVA' 카테고리의 다른 글

05-1 객체 지향 프로그래밍과 클래스  (0) 2023.02.20
04-2 반복문  (0) 2023.02.20
03-1 기본 연산자  (0) 2023.02.20
02-5 형 변환  (1) 2023.02.19
02-4 상수와 리터럴  (0) 2023.02.19