반응형
자바 기초 문법 조건문(if, switch) 연습하기
자바 프로그램은 main() 메소드의 시작 중괄호 '{' 에서 끝 중괄호 '}' 까지 위에서부터 아래로 실행하는 구조를 가지고 있습니다. 이러한 실행 흐름을 개발자가 의도하는대로 제어를 할 수 있게 해주는 것이 조건문과 반복문이 있는데 그 중에서 조건문에 대한 내용을 담았습니다.
조건문은 조건식에 따라 결과값이 다르게 나오는 흐름을 가지고 있습니다. 조건문은 if문과 switch문이 있는데 그 중에서 if문에 대해서 알아보겠습니다. if문은 조건식의 결과가 'true'인지 'false'인지에 따라 실행될 결과값이 정해집니다. 이건 설명보다 예제를 해보면서 이해하는 것이 빠르다고 생각하니 바로 예제로 들어갈게요.
package com.test;
public class IfSwitch {
public static void main(String[] args) {
int score = 75; //변수 'score'에 75를 저장
System.out.println("점수에 따른 등급");
if(score >= 80) { //score에 담긴 값이 80보다 같거나 크면
System.out.println("A등급입니다"); //A등급 출력
}else { //score에 담긴 값이 80보다 작으면
System.out.println("B등급입니다"); //B등급 출력
}
}
}
package com.test;
public class IfSwitch {
public static void main(String[] args) {
int num1 = 2; //'num1'에 2를 저장
int num2 = 3; //'num2'에 3을 저장
//boolean타입 'result'에 2와 3이 같은지의 비교결과를 저장
boolean result = num1 == num2;
if(result) { //두 값이 일치하다면
System.out.println("두 숫자는 같습니다");
}else { //두 값이 서로 다르다면
System.out.println("두 숫자는 틀립니다");
}
}
}
문자열이 같은지를 비교할때는 '=='가 아닌 '.equals'를 씁니다
그리고 if-else 조건문을 쓸 때는 경우의 수가 두 가지이지만 경우의 수를 추가하려면 else-if 조건문을 쓰면 됩니다
package com.test;
import java.util.Scanner;
public class IfSwitch {
public static void main(String[] args) {
//입력값을 넣기 위해 변수 'sc'를 선언하고 Scanner객체를 생성
Scanner sc = new Scanner(System.in);
System.out.println("학생의 이름을 입력하세요");
String student = sc.nextLine(); //문자열 입력
if(student.equals("철수")) { //입력받은 값이 '철수'라면 실행되는 조건문
System.out.println("철수는 3학년입니다");
}else if(student.equals("영희")){ //입력받은 값이 '영희'라면 실행되는 조건문
System.out.println("영희는 5학년입니다");
}else { //조건문에 해당하는 결과가 아닐 때 출력됨
System.out.println("없는 학생입니다");
}
}
}
조건식에서 중괄호 { } 블록은 여러 개의 실행문을 하나로 묶기 위해 작성됩니다
만약 조건식이 성립할 때 실행해야 할 문장이 하나라면 생략할 수 있습니다
package com.test;
import java.util.Scanner;
public class IfSwitch {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("점수를 입력하세요");
int point = sc.nextInt(); //int타입 'point'변수를 선언하고 거기에 입력값을 저장
if(point > 8)
System.out.println("최고점입니다");
else if(point > 5)
System.out.println("좋은 점수입니다");
else if(point > 3)
System.out.println("그럭 저럭입니다");
else
System.out.println("분발하세요");
}
}
package com.test;
import java.util.Scanner;
public class IfSwitch {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("점수를 입력하세요");
int point = sc.nextInt(); //int타입 'point'변수를 선언하고 거기에 입력값을 저장
if(point > 9) //입력된 값이 9이상이면 실행
System.out.println("최고점");
if(point > 7) //입력된 값이 7이상이면 실행
System.out.println("좋은점수");
if(point > 5) //입력된 값이 5이상이면 실행
System.out.println("평균");
}
}
else-if문을 쓰지 않고 if문만 여러 개 중복해서 사용할 시 발생할 수 있는 결과입니다
각각의 if문은 서로 별개이기 때문에 조건만 맞으면 입력된 코드대로 전부 출력될 수도 있습니다
상황에 따라서 if문이나 else-if문을 적절하게 쓰는 것이 좋겠습니다
자기계발하는 개발자
'인생최적화'
반응형
'코딩 > JAVA' 카테고리의 다른 글
[JAVA] 이클립스 클래스 생성 단축키 설정하기 (1) | 2021.01.18 |
---|---|
[Eclipse] 이클립스 단축키 설정하기 (10) | 2020.06.30 |
[JAVA] 자바 이클립스 자동 저장 실행 (11) | 2020.06.12 |
[JAVA] 자바 문법 연산자 (5) | 2020.06.11 |
[JAVA] 자바 문법 입력하기 (2) | 2020.06.09 |
댓글