If else 문

Dec 27, 2023
If else 문
조건에 따라 서로 다른 처리를 하고 싶을 때 사용하는 구조, 참인지 거짓인지 판별하고 싶을 때 쓴다.
 
if else 문의 구조는 다음과 같다.
if(조건식) { 조건식이 참이면 실행되는 문장 }else{ 조건식이 거짓이면 실행되는 문장 }
 

짝수와 홀수 구별하기

package ex03; import java.util.Scanner; public class EvenOdd { public static void main(String[] args) { int number; // 숫자는 값을 할당하지 않으면 0이 된다. Scanner sc = new Scanner(System.in); System.out.print("정수를 입력하시오: "); number = sc.nextInt(); if (number % 2 == 0){ //number를 2로 나누어서 0이면 짝수이다. System.out.println("짝수"); } else { System.out.println("홀수"); } } }
 
실행 결과
D:\\tools\\jdk-21.0.1\\bin\\java.exe "-javaagent:C:\\Program Files\\JetBrains\\IntelliJ IDEA Community Edition 2023.3\\lib\\idea_rt.jar=50164:C:\\Program Files\\JetBrains\\IntelliJ IDEA Community Edition 2023.3\\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath D:\\workspace\\java_lec\\study\\out\\production\\study ex03.EvenOdd 정수를 입력하시오: 2 짝수 Process finished with exit code 0
 

다중 if-else 문 : if-else 문장이 연속되는 형태

정수를 입력 받아 양수인지 음수인지 출력하는 코드

package ex03; import java.util.Scanner; public class Nested { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("정수를 입력하시오: "); int number = sc.nextInt(); if(number > 0) { System.out.println("양수"); } else if (number < 0) { System.out.println("음수"); } else { System.out.println("0"); } } }
 
실행 결과
D:\\tools\\jdk-21.0.1\\bin\\java.exe "-javaagent:C:\\Program Files\\JetBrains\\IntelliJ IDEA Community Edition 2023.3\\lib\\idea_rt.jar=50184:C:\\Program Files\\JetBrains\\IntelliJ IDEA Community Edition 2023.3\\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath D:\\workspace\\java_lec\\study\\out\\production\\study ex03.Nested 정수를 입력하시오: 2 양수 Process finished with exit code 0
 

성적 처리 예제

성적이 90 이상이면 A학점, 80 이상이고 90 미만이면 B학점, 70 이상이고 80 미만이면 C학점, 60 이상이고 70 미만이면 D학점, 60점 미만이면 F학점을 부여하는 코드.
package ex03; import java.sql.SQLOutput; import java.util.Scanner; public class Grading { public static void main(String[] args) { int grade; Scanner sc = new Scanner(System.in); System.out.println("성적을 입력하시오: "); grade = sc.nextInt(); if (grade >= 90) System.out.println("학점 A"); else if (grade >= 80) System.out.println("학점 B"); else if (grade >= 70) System.out.println("학점 C"); else if (grade >= 60) System.out.println("학점 D"); else System.out.println("학점 F"); } }
실행 결과
D:\tools\jdk-21.0.1\bin\java.exe "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2023.3\lib\idea_rt.jar=50874:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2023.3\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath D:\workspace\java_lec\study\out\production\study ex03.Grading 성적을 입력하시오: 80 학점 B Process finished with exit code 0
 

가위 바위 보 게임

사용자가 가위, 바위, 보 중에서 하나를 선택하면 컴퓨터가 생성한 난수와 비교해 누가 이겼는지 출력하는 코드.
package ex03; import java.util.Scanner; public class RockPaperScissor { final int SCISSOR = 0; final int ROCK = 1; final int PAPER = 2; public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("가위(0), 바위(1), 보(2): "); int user = sc.nextInt(); int computer = (int) (Math.random() * 3); if( user == computer) System.out.println("인간과 컴퓨터가 비겼음"); else if (user == (computer+1) % 3) //0은 1한테 지고 1은 2한테, 2는 0한테 진다. System.out.println("인간: " + user + "컴퓨터: " + computer + " 인간 승리"); else System.out.println("인간: " + user + "컴퓨터: " + computer + " 컴퓨터 승리"); } }
 
실행 결과
D:\tools\jdk-21.0.1\bin\java.exe "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2023.3\lib\idea_rt.jar=51417:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2023.3\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath D:\workspace\java_lec\study\out\production\study ex03.RockPaperScissor 가위(0), 바위(1), 보(2): 1 인간과 컴퓨터가 비겼음 Process finished with exit code 0
 
Share article

Essential IT