if statement
조건식의 다양한 예
조건문
조건식이 참일 조건
ch == 'y' || ch == 'Y'
문자 ch가 'y' 또는 'Y'일 때
ch == ' ' || ch == '\t' || ch == '\n'
문자 ch가 공백이거나 탭 또는 개행 문자일 때
'A' <= ch && ch <= 'Z'
문자 ch가 대문자일 때
'a' <= ch && ch <= 'z'
문자 ch가 소문자일 때
'0' <= ch && ch <= '9'
문자 ch가 숫자일 때
str.equals("yes")
문자열 str의 내용이 "yes"일 때(대소문자 구분)
str.equalsIgnoreCase("yes")
문자열 str의 내용이 "yes"일 때(대소문자 구분 안함)
else문 생략을 통한 코드 리팩토링 팁 : default 값을 지정해놓으면 else문을 굳이 쓰지 않아도 되고 코드가 훨씬 간결해진다.
import java.util.Scanner;
class Ex4_4 {
public static void main(String[] args) {
int score = 0;
char grade ='D';
System.out.print("점수를 입력하세요.>");
Scanner scanner = new Scanner(System.in);
score = scanner.nextInt(); // 화면을 통해 입력받은 숫자를 저장한다.
if (score >= 90) {
grade = 'A';
} else if (score >=80) {
grade = 'B';
} else if (score >=70) {
grade = 'C';
} //else {
//grade = 'D';
//}
System.out.println("당신의 학점 "+ grade +"입니다");
}
}
formatter %c를 이용하여 학점(A,B,C..)와 +-까지 출력하는 코드 + 리팩토
import java.util.Scanner;
//점수에 따라 자신의 점수와 학점(A,B,C) 와 +-까지 출력하는 코드
class Ex4_5 {
public static void main(String[] args) {
int score = 0;
char grade = 'C', opt = '0';
System.out.println("점수를 입력해주세요.>");
Scanner scanner = new Scanner(System.in);
score = scanner.nextInt();
System.out.printf("당신의 점수는 %d입니다%n",score);
if(score >= 90) {
grade = 'A';
if(score >= 98) {
opt = '+';
} else if(score < 94) {
opt = '-';
}
} else if (score >= 80){
grade = 'B';
if (score >= 88) {
opt = '+';
} else if (score < 84) {
opt = '-';
}
}
System.out.printf("당신의 학점은 %c%c입니다%n",grade,opt);
}
}
Last updated
Was this helpful?