본문 바로가기
자바공부/조건문과 반복문

JAVA(자바) - 조건문(if문)

by You진 2021. 1. 31.

JAVA(자바) - 조건문(if문)

 

책에 나오는 종류로는 : if문 , if-else문, if-else-if-else문, 중첩if문

 

▶if문

 - 조건식의 결과에 따라 중괄호 { } 블록을 실행할지 여부를 결정할 때 사용

if문

 - 조건식에는 ture와 false 값을 산출할 수 있는 연삭식 또는 boolean변수가 온다

 - 조건식이 true이면 블록을 실행하고 false이면 블록을 실행하지 않는다

 - 조건식에서 { } 중괄호는 실행문을 묶고 편하게 보기 위해서 인데 만약에 조건식이 true가 될때 실행문이 하나라면 중괄호를 생략할수 있다. 하지만 이거는 비추천입니다. (그냥 알고만 있으라고 적어둔거)

	public static void main(String[] args) {
		int score =85;
		
		if(score>=90) {
			System.out.println("점수가 90보다 큽니다");
			System.out.println("등급 A");
		}
		if(score<90) {
			System.out.println("점수가 90보다 작습니다");
			System.out.println("등급 B");
		}
	}
	실행 후 값은?
	점수가 90보다 작습니다.
	등급B

▶if-else문

  - 조건식의 결과에 따라 실행 블록을 선택합니다.

 

	public static void main(String[] args) {
		int score = 95;

		if (score >= 90) {
			System.out.println("점수가 90보다 큽니다");
			System.out.println("등급 A");
		} else {
			System.out.println("점수가 90보다 작습니다");
			System.out.println("등급 B");
		}
	}
	실행 후 결과 값?
	점수가 90보다 큽니다
	등급 A

▶if-else if-else 문

 - 복수의 조건식을 두어 조건식을 만족하는 블록만 실행한다.

	public static void main(String[] args) {
		int score = 75;

		if (score >= 90) {
			System.out.println("점수가 100~90 입니다");
			System.out.println("등급 A");
		} else if (score >= 80) {
			System.out.println("점수가 89~80 입니다");
			System.out.println("등급 B");
		} else if (score >= 70) {
			System.out.println("점수가 79~70 입니다");
			System.out.println("등급 C");
		} else {
			System.out.println("점수가 70미만 입니다");
			System.out.println("등급 D");
		}
	}
	실행 후 결과 값:
	점수가 79~70 입니다
	등급 C
	// 주사위!!
	public static void main(String[] args) {
		int num = (int) ((Math.random()*6)+1);

		if (num == 1) {
			System.out.println("1번이 나왔습니다");
		} else if (num == 2) {
			System.out.println("2번이 나왔습니다");
		} else if (num == 3) {
			System.out.println("3번이 나왔습니다");
		} else if (num == 4) {
			System.out.println("4번이 나왔습니다");
		} else if (num == 5) {
			System.out.println("5번이 나왔습니다");
		} else {
			System.out.println("6번이 나왔습니다");
		}
	}


	실행 후 결과 값?
	랜덤으로 나옵니다. Math.random() 메소드를 사용해서 랜덤으로 값이 떨어집니다.

▶중첩 if문

 - 말그대로 조건식 안에 조건식을 넣어버린다. 이게 재밌더라고요 ~

	public static void main(String[] args) {
		int score = (int) (Math.random() * 20) + 81;
		System.out.println("점수: " + score);
		String grade;
		if (score >= 90) {
			if (score > 95) {
				grade = "A+";
			} else {
				grade = "A";
			}
		} else {
			if (score > 85) {
				grade = "B+";
			} else {
				grade = "B";
			}
		}
		System.out.println(grade);
	}

	실행 후 결과 값?
	점수: 84
	B