1. if 조건문
조건식의 연산 결과에 따라 블록 내부 문장의 실행 여부를 결정 할 수 있다.
- if 문
- 조건식이 true 일 경우에만 실행문이 실행된다.
- if(조건식) 다음의 { } 를 생략가능하지만, 생략할 경우 if문에 포함되는 실행문은 단 한 줄만 포함된다.
if(조건식){
실행문;
실행문;
}
- if - else 문
- 조건식이 true일 경우 if 블록의 실행문이 실행되고, flase 일 경우 else 블록의 실행문이 실행된다.
if(조건식){
실행문;
실행문;
}else{
실행문;
}
- if - else if - else문
- 처음 if문의 조건식의 조건문이 true일 경우 처음 if문의 블록이 실행되고, false일 경우 다음 조건식의 결과에 따라 실행 블록이 달라진다.
- else if 문의 수는 제한이 없다. 그러나 너무 많은 else if 문은 실행 속도를 느리게 한다.
- 마지막 else 블록은 생략가능
if(조건식){
실행문;
실행문;
}else if(조건식){
실행문;
}else{
실행문;
}
2. 논리연산자
논리연산자는 논리곱(&&,&) 논리합(||,|), 배타적 논리합 () 논리부정(!) 연산을 수행한다. 논리 연산자의 피연산자는 블린 타입만 사용할 수 있다. 결과는 불린값이다.
| A | B | A && B | A || B | ! A |
| T | T | T | T | F |
| T | F | F | T | F |
| F | T | F | T | T |
| F | F | F | F | T |
- 논리곱 (&&, &) - 피연산자가 모두 true일 경우에만 연산 결과가 true 이다.
- System.out.println(b1 && b2); -> b2가 false 이므로 결과는 false
- System.out.println(b1 && b3); -> b1과 b2 모두 true 이므로 결과는 true
- 논리합 (||,|) - 피연산자 중 하나만 true이면 연산 결과는 true 이다.
- System.out.println(b1 || b2); -> b1 이 true이므로 결과는 true 이다.
- 배타적 논리합 () -> 피연산자가 서로 다른 값일 경우만 연산 결과가 true 이다.
- System.out.println(b1 ^ b2); -> b1은 true, b2는 false로 서로 다르므로 결과는 true 이다.
- System.out.println(b1 ^ b3); -> b1, b3 모두 true로 서로 같다. 결과는false 이다
- 논리 부정 (!) -> 피연산자의 논리값을 바꾼다. true는 false로 false는 true로 바꾼다.
- System.out.println(!b1); -> b1 이 true 이므로 결과는 false 이다.
- System.out.println(!b2); -> b1 이 false 이므로 결과는 true 이다.
3. 삼항연산자
자바에서는 하나밖에 없음. if 과 비슷
- 조건식 ? 피연산자1 : 피연산자2
- 조건식의 연산결과가 true 이면, 결과는 피연산자 1이고, 조건식의 연산결과가 false 이면 결과는 피연산자2
int b1 = (5>4) ? 50 : 40; // 조건문으로 표현하면 int b2 = 0; if(5 > 4){ b2 = 50; }else{ b2 = 40; }
4. swich 조건문
어떤 변수의 값에 따라서 문장을 실행할 수 있도록 하는 제어문
- switch문에서 사용하는 키워드는 switch, case, default, break
- JDK7이전에는 switch다음 괄호안에 정수타입의 변수만 가능했지만
- JDK7부터는 switch다음 괄호안에 문자열 타입의 변수도 가능해짐.
switch(변수){
case 값1 :
실행문;
break;
case 값2 :
실행문;
break;
default;
}
'Java > 기초 공부' 카테고리의 다른 글
| 클래스와 객체(1) (0) | 2025.11.19 |
|---|---|
| 배열 (0) | 2025.11.18 |
| 제어문 - 반복문 (0) | 2025.11.17 |
| [Java] 입출력 (0) | 2025.11.17 |
| 기본 - 주석, 변수, 연산 (0) | 2025.11.17 |