[JAVA] If-else 문 연습

Estar·2024년 7월 25일
0

TIL

목록 보기
15/17
post-thumbnail

조건문

개발자가 코딩한 구문을 특정 조건하에 실행 흐름을 나눠서 동작하도록 제어하는 것
IF문과 Switch문 두 개가 있다.

If 문

if(조건문){
실행문1;
실행문2;
}
조건문은 true라면 실행되고 false라면 실행되지 않는다.

public class Java_if_1 {
    public static void main(String[] args) {
        // main 메서드 실행
        if(true){
            System.out.print(1);
        }
        System.out.print(2);
    }
 public static void main2(String[] args) {
        if(false){
            System.out.print(1);
	}
        System.out.print(2);
    }
}

위 식에서 if( ) 이 사이가 true일 경우에만 조건문이 나오고 false면 나오지 않아서 결과값은 [1,2] 만 나온다.

그렇다면 false일 땐 어떻게 나와야 할까?

If-else 문

if(조건문){
실행문1;
실행문2;
}
else{
실행문3;
실행문4;
}

조건문이 true라면 실행문1,2를 실행하고 false라면 실행문3,4를 실행하는 것

public class IfElseExampleWithoutScanner {
    public static void main(String[] args) {
        int number = -5; // 고정된 숫자 값

        if (number > 0) {
            System.out.println("숫자는 양수입니다.");
        } else if (number < 0) {
            System.out.println("숫자는 음수입니다.");
        } 
    }
}

이렇게 고정된 값 -5가 있다고 할 때, number 변수가 0보다 크면 "숫자는 양수입니다"를 프린트하고
0보다 작다면 "숫자는 음수입니다"를 프린트한다.

근데 조건이 3개라면?!

else-if문

2개 이상의 조건문을 만들고 싶다면 else if 문을 쓰면 된다.
파이썬은 elif라고 바로 쓸 수 있는데 Java는 그게 없다.

package Java_if;

import java.util.Scanner;

public class Java_if_elseif {
    public static void main(String[] args) {
        Scanner c = new Scanner(System.in);
        System.out.print("A 점수를 입력하세요: ");
        int A = c.nextInt();

        if(A>=90){
            System.out.println("학점 A");
        }else if (A>=80) {
            System.out.println("학점 :B");
        }else if (A<80) {
            System.out.println("학점 :C");
        }
        c.close();
    }
}

일단 Scanner와 int는 보지마셈 맘아프니깐 ^^
토글로 정리해드림!

Scanner 문

Scanner c = new Scanner(System.in);
System.out.print("A 점수를 입력하세요: ");
int A = c.nextInt();

  • Scanner: 클래스 이름입니다. 자바에서 Scanner 클래스는 표준 입력(키보드 입력)을 읽기 위해 사용됩니다.
  • scanner: 변수 이름입니다. 변수 이름은 임의로 지정할 수 있으며, 여기서는 Scanner 객체를 참조하기 위해 사용됩니다.
  • new Scanner(System.in): Scanner 클래스의 새로운 인스턴스를 생성하는 코드입니다. System.in은 표준 입력 스트림(즉, 키보드 입력)을 의미합니다.
  • System.out.print("A 점수를 입력하세요: ");: 이 코드는 콘솔에 "A 점수를 입력하세요: "라는 메시지를 출력합니다. print 메서드는 줄 바꿈 없이 메시지를 출력합니다.
  • 이 줄이 실행된 후, 프로그램은 사용자가 입력하기를 기다립니다. 입력을 받기 위한 코드(예: scanner.nextInt())가 올 때까지 프로그램이 대기 상태가 됩니다.
  • int A: 정수형 변수를 선언합니다. 변수 이름은 A입니다.
  • scanner.nextInt(): Scanner 객체의 nextInt() 메서드를 호출하여 사용자로부터 정수를 읽습니다. 이 메서드는 사용자가 입력한 값을 읽고 정수로 변환하여 반환합니다. 만약 사용자가 정수가 아닌 다른 값을 입력하면 예외가 발생합니다.

if(A>=90)로 변수 A가 90이상이라면 "학점 A"
else if (A>=80)로 변수 A가 80이상이라면 "학점 :B"
else if (A<80)로 변수 A가 80미만이라면 "학점 :C"

이렇게 else를 넣고 거기에 조건문을 추가할 수 있다.
(무한증식가능)

profile
개발자를 꿈꿔요

0개의 댓글

관련 채용 정보