JAVA DAY7 - 조건문

어뮤즈온·2020년 11월 30일
0

초급자바

목록 보기
8/31
post-custom-banner

조건문

  • if문
  • switch 문

조건문은 조건식과 문장을 포함하는 블록{}으로 구성되어 있으며, 조건식의 연산결과에 따라 실행할 문장이 달라져서 프로그램의 실행흐름을 변경할 수 있다.


if문

  • if(조건식){} : 조건식의 결과가 true이면 블럭안의 문장을 수행한다.
  • else if(조건식){} : 다수의 조건이 필요할때 if 뒤에 추가한다.
  • else{} : 결과가 true인 조건식이 하나도 없는 경우를 위해 추가한다.
int a = 1;

if(a == 1){
	System.out.println("조건식의 연산결과가 true이면 수행된다.");
} //출력

if(a == 0){
	System.out.println("조건식의 연산결과가 false이면 수행되지 않는다.");
} //츨력되지 않는다.

if(a == 1){
	System.out.println("a가 1인 경우에 수행");
}else if(a == 2){
	System.out.println("a가 2인 경우에 수행");
}else if(a == 3){
	System.out.println("a가 3인 경우에 수행");
}else{
	System.out.println("위 조건식이 모두 false일 경우 수행");
} // a가 1인 경우에 수행 출력


//잘못된 경우 : 별개의 if문
if(a < 10){
	System.out.println("a가 10보다 작다");
}if(a < 20){
	System.out.println("a가 20보다 작다");
} //두개의 if문이 다 출력된다.

if(a < 10){
	System.out.println("a가 10보다 작다");
}else if(a < 20){
	System.out.println("a가 20보다 작다");
} //a가 10보다 작다 출력 : 첫번째 if문을 만족하므로 조건문 종료

//시험점수가 60점 이상이면 합격 그렇지 않으면 불합격
int score = 50;
if(socre >= 60){
	System.out.println("합격");
}else{
	System.out.println("불합격");
}//불합격 출력

문제

성적에 등급을 부여하는 프로그램을 만들어보시오.

int score =80;
String grade = null;

if(scores >= 90){
	grade = "A";
    if(score >= 97){
    	grade += "+";
    }else if(scores <= 93){
    	grade += "-";
    }
}else if(score >= 80){
	grade = "B";
    if(score >= 87){
    	grade = "+";
    }else if(score <= 83){
    	grade = "-";
    }
}else if(score >= 70){
	grade = "C";
    if(score >= 77){
    	grade = "+";
    }else if(score <= 73){
    	grade = "-";
    }
}else if(score >= 60){
	grade = "D"
    if(score >= 67{
    	grade = "+";
    }else if(score <= 63{
    	grade = "-";
    }
}else{
	grade = "F";
}

System.out.println(score + "점에 해당하는 등급은 " + grade + "입니다.");

switch문

  • switch(int/String){case 1: break;}
  • 조건식의 결과는 정수와 문자열만(JDK1.7부터 문자열 허용) 허용한다.
  • 조건식과 일치하는 case문 이후의 문장을 수행한다.
  • 조건식과 일치하는 case문이 없을때 default를 수행한다.
int a = 1;

switch(a){
case 1:
	System.out.println("a가 1인 경우 출력");
    	break;
//case 1의 break가 없다면 a = 1일때, 결과는 break를 만나기전인 case 2까지 수행
case 2:
	System.out.println("a가 2인 경우 출력");
   	break;
case 3:
	System.out.println("a가 3인 경우 출력");
    	break;
default:
	System.out.println("이외의 경우 출력");
}//a가 1인 경우 출력

String b = "a";

switch(b){
case "a":
	System.out.println("b가 \"a\"인 경우에 출력");
	break;
case "b":
	System.out.println("b가 \"b\"인 출력");
	break;
default:
	System.out.println("이외의 경우에 출력");
	break;
} //b가 "a"인 경우에 출력
profile
Hello, world!
post-custom-banner

0개의 댓글