Dev/Java

if - 조건문 종류와 예시(feat. 가위바위보)

Anews 2024. 9. 3. 22:52
if(조건)
더보기
  • 특정 조건에 따라 다른 연산을 수행하고 싶을 때 사용하는 문맥입니다.
  • 기본적인 조건에 따른 연산을 수행하기 위해 if(조건){연산}  형태로 사용합니다.
  • if의 소괄호 () 안의 조건이 boolean 값 true를 만족하면 중괄호 {} 안의 연산을 수행한다.

 

<예시>

boolean flag = true;

if (flag) {
	System.out.println("flag 값은 true 입니다."); // flag 값은 true 입니다. 출력
}
if(조건) - else
더보기
  • if문 조건이 거짓일 경우에 따른 연산을 수행하기 위해 else{연산} 형태로 사용합니다.
  • if의 소괄호() 안의 조건이 boolean 값 false를 만족하면 else if의 중괄호{} 안의 연산을 수행한다.

<예시>

// 조건문 with else
boolean flag = false;

if (flag) {
	System.out.println("flag 값은 true 입니다."); // 미출력
} else {
	System.out.println("flag 값은 false 입니다."); // flag 값은 false 입니다. 출력
}
if(조건) - else if(조건)
더보기
  •  if문 조건이 거짓일 경우에 다시 한번 다른 조건으로 체크해서 참일 경우에 연산을 수행하기 위해

        else if(조건){연산} 형태로 사용합니다.

  •  else if의 소괄호() 안의 조건이 boolean 값 true를 만족하면else if의 중괄호 {} 안의 연산을 수행합니다.
// 조건문 with else if
int number = 2;

if (number == 1) {
	System.out.println("number 값은 1 입니다."); // 미출력
} else if (number == 2) {
	System.out.println("number 값은 2 입니다."); // number 값은 2 입니다. 출력
} else {
	System.out.println("number 값은 모르는 값입니다."); // 미출력
}
중첩 if(조건)
더보기
  • if문에 else, else if로 해결할 수 없는 복잡한 조건이 있을 때 사용한다.
  • 중첩해서 if문 또는 else if문 또는 else문 안에 if문을 넣을 수 있습니다.

 

// 중첩 조건문
boolean flag = true;
int number = 2;

if (flag) {
	if (number == 1) {
		 System.out.println("flag 값은 true, number 값은 1 입니다."); // 미출력
  } else if (number == 2) {
		 System.out.println("flag 값은 true, number 값은 2 입니다."); 
         // flag 값은 true, number 값은 2 입니다. 출력
	}
} else {
	if (number == 1) {
		 System.out.println("flag 값은 false, number 값은 1 입니다."); // 미출력
  } else if (number == 2) {
		 System.out.println("flag 값은 false, number 값은 2 입니다."); // 미출력
	}
}
중첩 if문을 활용(가위바위보)
더보기
// 조건문으로 가위바위보 만들기

import java.util.Objects;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);

		System.out.print("A 입력 : ");
		String aHand = sc.nextLine(); // A 입력

		System.out.print("B 입력 : ");
		String bHand = sc.nextLine(); // B 입력

		if (Objects.equals(aHand, "가위")) { // 값을 비교하는 Obects.equals() 메서드 사용
			if (Objects.equals(bHand, "가위")) {
				System.out.println("A 와 B 는 비겼습니다."); 
                // A 와 B 의 입력값을 비교해서 결과 출력
			} else if (Objects.equals(bHand, "바위")) {
				System.out.println("B 가 이겼습니다.");
			} else if (Objects.equals(bHand, "보")) {
				System.out.println("A 가 이겼습니다.");
			} else {
				System.out.println(" B 유저 값을 잘못 입력하셨습니다.");
			}
		} else if (Objects.equals(aHand, "바위")) {
			if (Objects.equals(bHand, "가위")) {
				System.out.println("A 가 이겼습니다.");
			} else if (Objects.equals(bHand, "바위")) {
				System.out.println("A 와 B 는 비겼습니다.");
			} else if (Objects.equals(bHand, "보")) {
				System.out.println("B 가 이겼습니다.");
			}
		} else if (Objects.equals(aHand, "보")) {
			if (Objects.equals(bHand, "가위")) {
				System.out.println("B 가 이겼습니다.");
			} else if (Objects.equals(bHand, "바위")) {
				System.out.println("A 가 이겼습니다.");
			} else if (Objects.equals(bHand, "보")) {
				System.out.println("A 와 B 는 비겼습니다.");
			}
		}

	}
}

// 입/출력 예시
// A 입력 : 가위
// B 입력 : 보
// A 가 이겼습니다.

'Dev > Java' 카테고리의 다른 글

상속 - 개념편  (4) 2024.10.02
스타크래프트로 알아보는 객체지향(1편)  (6) 2024.09.25
switch - 조건문 종류와 예시  (0) 2024.09.05
for - 반복문 종류와 예시  (0) 2024.09.04
코드 해석하기  (0) 2024.09.02