728x90
반응형
비교 연산자
- 두 값을 비교하는 연산
- 비교 연산의 결과는 항상 참(true) 또는 거짓(false)이다. (비교 연산의 결과는 boolean 타입이다.)
- 산술 연산과 비교 연산이 함께 있으면 산술 연산을 먼저 한다.
논리 연산자
- 두 boolean 타입 값으로 연산하는 연산자
- && : 두 값이 모두 true일 때 true (AND)
- || : 두 값 중 하나만 true여도 true (OR)
- ! : true면 false, false면 true (NOT)
public class B02_Operator {
public static void main(String[] args) {
int a = 10, b = 3;
System.out.println(a > b); // < : 왼쪽이 크면 true
System.out.println(a < b); // > : 오른쪽이 크면 true
System.out.println(a >= b); // >= : 왼쪽이 크거나 같으면 true
System.out.println(a <= b); // <= : 오른쪽이 크거나 같으면 true
System.out.println(a == b); // == : 두 값이 같으면 true
System.out.println(a != b); // != : 두 값이 다르면 true
}
}
- 비교 연산 전에 산술 연산을 먼저 한다.
public class B02_Operator {
public static void main(String[] args) {
System.out.println(5 * 5 < 10 + 7);
}
}
- a를 2로 나누었을 때 나머지가 0이면 true (a에 짝수가 들어있으면 true)
public class B02_Operator {
public static void main(String[] args) {
int a = 2;
System.out.println(a % 2 == 0);
}
}
- a가 5의 배수가 아닐 때 true
public class B02_Operator {
public static void main(String[] args) {
int a = 2;
System.out.println(a % 5 != 0);
}
}
- AND 연산자
public class B02_Operator {
public static void main(String[] args) {
System.out.println("#### AND ####");
System.out.println(true && true);
System.out.println(true && false);
System.out.println(false && true);
System.out.println(false && false);
// AND 연산은 앞의 조건이 false가 나오면 뒤의 연산은 굳이 수행하지 않는다.
}
}
- OR 연산자
public class B02_Operator {
public static void main(String[] args) {
System.out.println("#### OR ####");
System.out.println(true || true);
System.out.println(true || false);
System.out.println(false || true);
System.out.println(false || false);
// OR 연산은 앞의 조건이 true가 나오면 뒤의 연산은 굳이 수행하지 않는다.
}
}
- NOT 연산자
public class B02_Operator {
public static void main(String[] args) {
System.out.println("#### NOT ####");
System.out.println(!true);
System.out.println(!false);
// true와 false 자리에 비교 연산을 넣어 사용할 수 있다.
}
}
※ 문자열(대문자로 시작하는 타입)은 ==으로 비교하면 안됨
public class B02_Operator {
public static void main(String[] args) {
String str = "happy";
System.out.println(str == "happy");
// 참조형 변수는 equals() 메서드로 비교해야 한다. (모든 참조형 변수는 equals() 메서드를 보유하고 있다.)
System.out.println(str.equals("happy"));
}
}
Quiz
# 알맞은 비교 연산을 만들어 보세요
1. int형 변수 a가 10보다 크고 20보다 작을 때 true
2. int형 변수 b가 짝수일 때 true
3. int형 변수 c가 7의 배수일 때 true
4. int형 변수 d와 e의 차이가 30일 때 true
5. int형 변수 year가 400으로 나누어 떨어지거나
또는 4로 나누어 떨어지고 100으로 나누어떨어지지 않을 때 true
6. boolean형 변수 powerOn이 false일 때 true
7. 문자열 참조변수 str이 "yes"일 때 true
Answer
(1)
package quiz;
public class B02_ConditionQuiz {
public static void main(String[] args) {
// (1)
int a = 10;
boolean result1 = a > 10 && a < 20;
System.out.println(result1);
// (2)
int b = 10;
boolean result2 = b % 2 == 0;
System.out.println(result2);
// (3)
int c = 10;
boolean result3 = c % 7 == 0;
System.out.println(result3);
// (4)
int d = 160, e = 130;
boolean result4 = Math.abs(d - e) == 30;
System.out.println(result4);
// (5)
int year = 1000;
boolean result5 = year % 400 == 0|| year % 100 != 0 && year % 4 == 0;
System.out.println(result5);
// (6)
boolean powerOn = false;
System.out.println(!powerOn);
// (7)
String str = "yes";
boolean result6 = str.equals("yes");
System.out.println(result6);
}
}
728x90
반응형
'JAVA > 기본 이론' 카테고리의 다른 글
JAVA | 연산자(Operator)(3) (0) | 2023.02.25 |
---|---|
JAVA | 조건문(if문) (0) | 2023.02.23 |
JAVA | 연산자(Operator)(1), Math 메서드 (0) | 2023.02.22 |
JAVA | Scanner 클래스 사용법 (0) | 2023.02.21 |
JAVA | print() (0) | 2023.02.21 |