가장 자주 쓰이고 중요한 조건문입니다
이 조건문은 프로그램의 실행 흐름을 바꾸기 때문에 중요합니다
조건문의 가장 간단한 문법입니다
if (true) {
System.out.println("true면 실행합니다 ");
}
소괄호 안의 조건이 true면 중괄호 안의 코드를 실행합니다
반대로 true가 아니라 false면 중괄호 안의 코드를 실행하지 않습니다
그리고 대부분 위 소스코드처럼 true를 넣진 않습니다 ㅎㅎ 실제로 업무에서는 간단하게
사용합니다
String chkVal = "";
boolean key = false;
if ("".equals(chkVal)){
key = true;
}
if (key) {
System.out.println("true면 실행합니다 ");
}
예를 들어 chkVal를 매개변수로 받아온 것이 공백이다라고 하면 그 값이 공백일 때
다른 작업을 해줘야겠죠? 아니면 다른 값이 들어오면 그 값에 맞춰 다른 작업을 해줘야 할 것이고요 ㅎㅎ
그럴 때 위와 같이 처리합니다 공백일 때 key에 true를 주고 아니면 기존 그대로 false를
갖고 있겠죠 ㅎㅎ
아참 그리고 equals는 서로 같은지 체크하고 true false 중 하나를 리턴하는 메서드입니다
그리고 조건문에는 아닐 때 에도 체크하고 일련 작업을 할 수 있습니다 ㅎㅎ
if (key) {
System.out.println("true면 실행합니다 ");
} else {
System.out.println("false면 실행합니다");
}
이제 코드만 보셔도 알겠죠? ㅎㅎ true가 아니면 else부분 중괄호 안의 코드를 실행합니다
그리고 여러 개를 넣을 수도 있어요 ㅎㅎ 조건문은 여러 개로 묶을 수도 있답니다
if (1==1 && 2==2) {
System.out.println("true면 실행합니다 ");
} else {
System.out.println("false면 실행합니다");
}
자 이제 key가 빠졌네요 유추해보신 대로 1과 1이 같으면 트루 2와 2가 같으면 트루
그 두 개를 and 합니다 ㅎㅎ 상세히 설명하자면 && 연산자는 좌항의 조건과 우항의 조건이
둘 다 같아야 합니다 ㅎㅎ
1==1 && 2==1 이 조건은 false입니다 ㅎㅎ 하나만 참이고 하나는 거짓이기 때문입니다
true가 참 false가 거짓입니다! ㅎㅎ
그러면 or 조건을 한번 봅시다
if (1==1 || 2==2) {
System.out.println("true면 실행합니다 ");
} else {
System.out.println("false면 실행합니다");
}
이건 당연히 참이 나올 것입니다 그럼 아래의 내용을 봅시다
if (1==1 || 2==4) {
System.out.println("true면 실행합니다 ");
}
이 코드는 true입니다 ㅎㅎ 근데 우항의 연산이 false 네요?
왜냐하면 or연산자는 하나라도 true 면 true입니다
그리고 좌항의 조건이 true이면 우항의 조건을 비교하지 않습니다 주의하셔야 합니다 ㅎㅎ
소프트웨어 입장에서도 의미가 없잖아요 ㅎㅎ 어차피 하나만 true면 true인데 우항 까지
내가 체크해야 돼?라는 못된 심보예요 ㅎㅎ 조심하세요
true || false = true 가 성립되는 셈입니다
그리고 이제 본격적으로 조건문을 봅시다ㅎㅎ
String chkValue = "test";
if (chkValue == "chk") {
System.out.println("문자열이 chk에요 ");
} else if(chkValue == "value") {
System.out.println("문자열이 value에요");
} else if (chkValue == "result"){
System.out.println("문자열이 result에요");
} else {
System.out.println("맞는 문자열이 하나도 없네요!");
}
자 else if 구문입니다 ㅎㅎ 그냥 if를 여러 개 써도 되지만 그러면 소스코드가 속된 말로 거지 같아집니다
물론 거지같이 작동하겠죠 ㅎㅎ 모든 작업은 하나의 프로세스로 돌아가야 합니다 순환이 잘되어야 한다는 것이죠
위에서부터 보면 문자열을 하나씩 체크해서 그에 맞는 출력을 하는 것입니다 ㅎㅎ
if 구문에서 이미 true면 아래의 구문을 실행하지 않습니다 기억하세요
그리고 중간에 else if 구문에서 true를 얻으면 그 이후 구문도 실행하지 않아요 ㅎㅎ 바로 빠져나가죠
이 점만 기억하고 조건문을 사용하시면 될 것 같습니다 ㅎㅎ 삼항 연산자도 있는데 그 내용은 나중에 다루도록 하겠습니다
'Developer > Java' 카테고리의 다른 글
[java]배열 (0) | 2022.07.06 |
---|---|
[java]반복문 (0) | 2022.07.05 |
[java]연산자 (0) | 2022.06.17 |
[java]기초 자바 용어 (0) | 2022.06.08 |
[java]메모장으로 작성된 자바코드 컴파일 하는법 (0) | 2022.06.07 |