[Java의 정석] 조건문 - if (2)

말하는 감자·2023년 12월 10일
0

Java의 정석

목록 보기
32/32
post-thumbnail

Chapter 04 조건문과 반복문

1. 조건문 - if, switch

📌 if-else문

if문의 변형인 if-else문의 구조는 다음과 같다. if문에 'else블럭'이 더 추가되었다. 'else'의 뜻이 '그 밖의 다른'이므로 조건식의 결과가 참이 아닐 때, 즉 거짓일 때 else블럭의 문장을 수행하라는 뜻이다.

if (조건식) {
	// 조건식이 참(true)일 때 수행될 문장들을 적는다.
} else {
	// 조건식이 거짓(false)일 때 수행될 문장들을 적는다.
}

조건식의 결과에 따라 이 두 개의 블럭{} 중 어느 한 블럭{}의 내용이 수행되고 전체 if문을 벗어나게 된다. 두 블럭{}의 내용이 모두 수행되거나, 모두 수행되지 않는 경우는 있을 수 없다.

📌 if-else if문

if-else문은 두 가지 경우 중 하나가 수행되는 구조인데, 처리해야할 경우의 수가 셋 이상인 경우에는 어떻게 해야 할까? 그럴 때는 한 문장에 여러 개의 조건식을 쓸 수 있는 if-else if문을 사용하면 된다.

if (조건식1) {
	// 조건식1의 연산결과가 참일 때 수행될 문장들을 적는다.
} else if (조건식2) {
	// 조건식2의 연산결과가 참일 때 수행될 문장들을 적는다.
} else if (조건식3) {	// 여러개의 else if를 사용할 수 있다.
	// 조건식3의 연산결과가 참일 때 수행될 문장들을 적는다.
} else {
	// 위의 어느 조건식도 만족하지 않을 때 수행될 문장들을 적는다.
}

첫 번째 조건식부터 순서대로 평가해서 결과가 참인 조건식을 만나면, 해당 블럭{}만 수행하고 if-else if문 전체를 벗어난다.
만일 결과가 참인 조건식이 하나도 없으면, 마지막에 있는 else블럭의 문장들이 수행된다. 그리고 else블럭은 생략이 가능하다. else블럭이 생략되었을 때는 if-else if문의 어떤 블럭도 수행되지 않을 수 있다.

📌 중첩 if문

if문의 블럭 내에 또 다른 if문을 포함시키는 것이 가능한데 이것을 중첩 if문이라고 부르며 중첩의 횟수에는 거의 제한이 없다.

if (조건식1) {
	// 조건식1이 true일 때 수행될 문장들을 적는다.
    if (조건식2) {
    	// 조건식1과 조건식2가 모두 true일 때 수행될 문장들
    } else {
    	// 조건식1이 true이고, 조건식2가 false일 때 수행되는 문장들
    }
} else {
	// 조건식이 flase일 때 수행될 문장들
}

위와 같이 내부의 if문은 외부의 if문보다 안쪽으로 들여쓰기를 해서 두 if문의 범위가 명확히 구분될 수 있도록 작성해야 한다.


📑 원본 자료

  • Java의 정석(3판) [남궁 성/도우출판/2016]
profile
나는 말하는 감자다

0개의 댓글