산술 연산자는 사칙연산을 다루는 연산자로, 가장 기본적이면서도 가장 많이 사용되는 연산자 중 하나입니다.
int num1 = 30;
int num2 = 40;
int num3 = 20;
int num4 = 10;
num1 += 50; //80
num2 -= 10; //40
num3 *= 20; //400
num4 /= 10; //1
num4 %= 10; //0
System.out.println("15 & 25 = " + (15 & 25));
System.out.println("15 | 25 = " + (15 | 25));
System.out.println("15 ^ 25 = " + (15 ^ 25));
System.out.println("~25 = " + (~25));
// 15 & 25 = 9
// 15 & 25 = 31
// 15 & 25 = 22
// ~25 = -26
비교 연산자라고도 하며 우리가 수학시간에 배웠던 부등호를 생각하면 됩니다. 관계 연산자의 결과는 true 혹은 false 값인 boolean 자료형으로 반환이 됩니다.
객체 + instanceof + 클래스
class a{}
class B extends A{}
class instanceofEx01 {
public static void main(String[] args) {
A a = new A();
B b = new B();
System.out.println(a instanceof A);
System.out.println(b instanceof A);
System.out.println(a instanceof B);
System.out.println(b instanceof B);
true
true
false
true
세 번째 결과가 false인 이유는 부모가 자식이 되려 했기 때문이다.
대입 연산자는 변수에 값을 대입할 때 사용하는 연산자입니다.
연산은 기본적으로 오른쪽에서 왼쪽으로 결합합니다.
자주 활용하는 연산자만 알아보도록 하겠습니다.
화살표 연산자는 람다식 표현에 사용되는 연산자
함수의 정의를 따로 만들지 않고 실제 사용되는 코드 부분에서 함수를 정의하여 사용하는 것
(매개변수) -> {실행문}
결국 화살표 연산자(->)는 매개변수를 넘겨서 함수를 실행한다는 의미입니다.
if-else 표현을 한 줄(3항 연산자)로 요약 가능하다.
if(something) {
} else {
}
변수 = (조건) ? 참 : 거짓;
boolean bl = 4<5? true:false;
삼항 연산자를 사용하여 코드의 라인이 줄어들었다고 컴파일 속도가 빨라지는 것은 아닙니다.
switch(val) {
case 'a' :
// something 'a'
break;
case 'b' :
// something 'b'
break;
}
switch(val) {
case 'a' -> System.out.println('a');
case 'b' -> System.out.println('b');
}
위와 같이 사용했을 때의 장점은 break를 사용하지 않아도 되고, 아래와 같이 표현 식으로도 사용 가능합니다.
System.out.println(
switch(val) {
case 'a' -> "A"
case 'b' -> "B"
case 'c' -> "C"
}
);
T a = switch(val) {
case 'd' -> d;
case 'e' -> e;
default -> f;
};
표현식으로 사용하여 변수 할당이나 반환 값으로도 사용 가능합니다.
http://www.tcpschool.com/java/java_operator_arithmetic
https://coding-factory.tistory.com/521
https://velog.io/@foeverna/Java-연산자-관계-논리-조건-비트-연산자
https://improver.tistory.com/140
https://mine-it-record.tistory.com/120
https://sowhat4.tistory.com/67
https://coding-factory.tistory.com/266
https://toma0912.tistory.com/66