📌 =
📌 +=, -=, /=, *=, %=, 등등..
Byte b = 1;
b = (byte)(b + 1); //b + 1의 결과값이 int형이기 때문에 casting을 해야하지만
b += 1; //이 경우는 casting을 하지 않아도 에러가 발생하지 않는다.
📌 ==, !=, <, <=, >, >=
🤷♀️ 같은 값이지만 다른 값으로 취급되는 경우도 있습니다
0.1 == 0.1f
/* Float 타입이 double타입으로 변환될 때 실수 근사치 표현에의해서 잘못된 연산 결과가 나온다. */
(float)0.1 == 0.1f
/* => double 형을 float으로 casting해서 오류를 방지할 수 있다. */
📌 AND연산자(&, &&, 논리곱)
📌 OR연산자(|, ||, 논리합)
📌 NOT연산자(!, 논리부정)
📌 XOR연산자 (^, 배타적 논리합exclusive or)
두 피연산자가 서로 다를 경우 결과값이 true, 같을 경우는 false
피연산자의 자리에 관계연산식이 와서 대소관계에 대한 논리적인 판별을 할수 있습니다
📌 ++, --
📌 ++a, --a
💥 다른 연산과 결합하여 사용할 때는 먼저 피연산자의 값을 1 증가시킨 후 다음 연산에 참여합니다
Int a = 10, b;
b = ++a;
System.out.println(b);
System.out.println(a);
-----------------------------
11
11
📌 a++, a--
💥 다른 연산과 결합하여 사용할 때는 먼저 다른 연산에 참여한 후 1을 증가시킨다.
Int a = 10, b;
b = a++;
System.out.println(b);
System.out.println(a);
-----------------------------
10
11
📌 조건식 ? 값1 : 값2
Int a = 5;
a > 0 ? "a는 양수" : a < 0 ? "a는 음수" : "a는 0";
🥕 Null String
= 다른 데이터 타입을 문자열 타입으로바꾸는 역할
🥕 Boolean
문자열 외에 다른 타입과는 연산할 수 없습니다
🥕 연산자의 우선순위
우선순위표 출처
https://kephilab.tistory.com/28