조건문: 주어진 조건에 따라서 애플리케이션을 다르게 동작하도록 하는 프로그램의 핵심이다.
Boolen은 조건문에서는 Boolen값을 기준으로 실행 흐름을 제어한다.
if절이 true일 때 → then절 실행
if절이 false일 때 → else if절로 넘어간다.
else if절은 여러개를 입력할 수 있다.
else절은 생략할 수 있다.
public class Condition1Demo {
public static void main(String[] args) {
if(true){
System.out.println("result : true"); // result : true가 출력된다.
}
}
}
public class Condition2Demo {
public static void main(String[] args) {
if (true) {
System.out.println(1); //1만 출력된다.
System.out.println(2);
System.out.println(3);
System.out.println(4);
}
System.out.println(5);
}
}
조건이 true일 때 if 절의 중괄호 내에서 1가지 값만 출력된다.
if(false){
System.out.println(1);
System.out.println(2);
System.out.println(3);
System.out.println(4);
}
System.out.println(5); //5가 출력된다.
조건문을 false로 두면 괄호 밖으로 나와 else문(생략)이 출력된다.
if절의 값이 true면 then절이 실행된다.
false라면 else if절의 then이 실행된다.
else if절이 false라면 then절이 실행된다.
if(false){
System.out.println(1);
} else if(false) {
System.out.println(2);
} else if(true) {
System.out.println(3); /// 3이 출력된다.
} else {
System.out.println(4);
}
if(false){
System.out.println(1);
} else if(false) {
System.out.println(2);
} else if(false) {
System.out.println(3);
} else {
System.out.println(4); //4가 출력된다.
}
이클립스에서 [Run Configuration]-[argument]에서 egoing을 입력하여 ID가 일치하는지 확인했다.
public class LoginDemo {
public static void main(String[] args) {
String id = args[0];
if(id.equals("egoing")){
System.out.println("right"); // right가 출력된다.
} else {
System.out.println("wrong");
}
}
}
package org.opentutorials.javatutorials.condition;
public class LoginDemo2 {
public static void main(String[] args) {
String id = args[0]; // egoing
String password = args[1]; //111111
if (id.equals("egoing")) {
if (password.equals("111111")) {
System.out.println("right");
} else {
System.out.println("wrong");
}
} else {
System.out.println("wrong");
}
}
}
args[0]: id라는 변수에 egoing값이 입력 됐다.
args[1]: password 변수에 111111값이 입력 됐다.
1개의 if문으로 연관된 로직들을 응집할 수 있다.
switch문: switch문 내에서 값이 일치하는 조건(case)의 값 이하가 모두 실행된다.
사용 빈도는 적지만 로직을 명료하게 보여주는 시각적 장점이 있기 때문에 비교할 조건들이 많으면 if문 보다 편리하여 사용한다.
switch문에서 사용 가능한 데이터 타입: byte, short, char, int, enum, String, Character, Byte, Short, Integer
public static void main(String[] args) {
System.out.println("switch(1)");
switch(1){
case 1:
System.out.println("one");
case 2:
System.out.println("two");
case 3:
System.out.println("three"); //1이하의 값으로 one two three가 출력 된다.
}
System.out.println("switch(2)");
switch(2){
case 1:
System.out.println("one");
case 2:
System.out.println("two");
case 3:
System.out.println("three"); // two와 three가 출력된다.
}
System.out.println("switch(2)");
switch(2){
case 1:
System.out.println("one");
break;
case 2:
System.out.println("two");
break; /two만 출력 된다.
case 3:
System.out.println("three");
break;
}
break
: break문을 만나면 조건이 종료된다.
System.out.println("switch(4)");
switch(4){
case 1:
System.out.println("one");
break;
case 2:
System.out.println("two");
break;
case 3:
System.out.println("three");
break;
default:
System.out.println("default");
break; // default가 출력 된다.
}
}
}
default
: switch문에서 내가 부여한 조건 값이 case문에 어디에도 속하지 않으면, default문이 정의되었다면 default문이 실행된다.