Java : 조건문과 반복문

커비·2024년 11월 12일
0

Java

목록 보기
28/55

if ~ else

if (1 != 1){
        // 여기가 아니면
        } else if (1 > 3) {
        // 여기, 여기가 아니면
        }else {
        // 여기
        }

if ~ else문은 이렇게 이해하면 쉽다.

if(1 != 1) {
            // true인 경우
            System.out.println("값이 true 입니다.");
        } else {
            System.out.println("값이 false 입니다.");
        }

이렇게 보아도 이해하기 쉬울 것 같다.
주 골격은 if() {} 이렇게 되어있고 사용하고자한다면 반드시 기억하는 것이 좋다.


📍 if else문으로 가위바위보 만들기

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

// 가위바위보
public class W13 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        // A에게 값 입력받기
        System.out.println("A 입력 : ");
        String aHand = sc.nextLine();

        // B에게 값 입력받기
        System.out.println("B 입력 : ");
        String bHand = sc.nextLine();

        // 두 개의 값을 비교하는 메서드 => Objects.equals(좌, 우) : 좌 우가 같은 경우 true, 다른 경우 false
        if (Objects.equals(aHand, "가위")) {
            if (Objects.equals(aHand, "가위")) {
                System.out.println("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(aHand, "가위")) {
                System.out.println("A가 이습니다.");
            } else if (Objects.equals(bHand, "바위")) {
                System.out.println("A와 B가 비겼습니다.");
            }else if (Objects.equals(bHand, "보")) {
                System.out.println("A가 졌습니다.");
            }else {
                System.out.println("B가 이상한 값을 입력했습니다.");
            }
        }else if (Objects.equals(aHand, "보")){
            if (Objects.equals(aHand, "가위")) {
                System.out.println("A가 졌습니다.");
            } else if (Objects.equals(bHand, "바위")) {
                System.out.println("A와 이겼습니다.");
            }else if (Objects.equals(bHand, "보")) {
                System.out.println("A와 B가 비겼습니다.");
            }else {
                System.out.println("B가 이상한 값을 입력했습니다.");
            }
        }else {
            System.out.println("A가 이상한 값을 입력했습니다.");
        }
    }


}

Switch문

if~else문보다 가독성이 좋은 편에 속하지만, 팀마다 사람마다 쓰는 방식이 다르기 때문에 그 때 정하기 나름이다. if와 switch문 둘 중 하나만 쓸 줄 아는 것은 좋지 않지만, 대부분 if문만 아는 사람이 많다고 한다.

package week02;

public class W14 {
    public static void main(String[] args) {
        int month = 8;
        String monthString = "";

        // Switch문
        switch (month) {
            // case ~~~~ 연산
            case 1:
                monthString = "1월";
                break;
            case 2:
                monthString = "2월";
                break;
            case 3:
                monthString = "3월";
                break;
            case 4:
                monthString = "4월";
                break;
            case 5:
                monthString = "5월";
                break;
            case 6:
                monthString = "6월";
                break;
            case 7:
                monthString = "7월";
                break;
            case 8:
                monthString = "8월";
                break;
            case 9:
                monthString = "9월";
                break;
            case 10:
                monthString = "10월";
                break;
            case 11:
                monthString = "11월";
                break;
            case 12:
                monthString = "12월";
                break;
            default:
                monthString = "알 수 없음";
        }
        System.out.println(monthString);
    }
}

📍 While문

주의할 점

  • 무한 Loop에 조심
int number = 0;

        // ~ 하는 동안
        while (number < 3) { // number < 3 인 동안 ~~
            number++; // 1, 2, 3
            System.out.println(number + "출력!");
        }

✅ do ~ while문의 주골격

do {
	// 이 로직을 먼저 수행하겠다!
        }while ();
profile
전공은 컴퓨터공학, 복수전공은 해킹보안학, 직장은 방학(파워 구직중)

0개의 댓글