KeyWords : 연산자, 조건문
기능이 있는 특수문자
최우선 연산자 : , [] ()
단항 연산자 : + - ! ++ --
산술 연산자 : + - * / %
쉬프트 연산자 : >> <<
관계 연산자 : > < == != >= <= .equals()
논리 연산자 : && ||
삼항 연산자 : 조건식 ? 참일 경우의 값 : 거짓일 경우의 값
대입 연산자 : 복합 대입 연산자 += -= *= /= %=
연산자의 우선순위
1. 최우선 연산자
2. 단항 연산자
부호 (+, -), 논리 부정(!true, !false) - boolean 타입 앞에서 사용
논리 부정(NOT) ~ : 0 -> 1
, 1 -> 0
~a = -a -1
증감 연산자 : ++ (1 증가), --(1 감소)
3. 산술 연산자
4. 쉬프트 연산자
>>
우쉬프트 : 오른쪽으로 B만큼 이동 (A >> B)
<<
좌쉬프트 : 왼쪽으로 B만큼 이동 (A << B)
5. 관계 연산자 : == , !=, >, <, >=, <=
6. 논리 연산자
논리곱(AND) & : 두 비트 모두 1이면 1
논리합(OR) | : 두 비트중 하나가 1이면 1
베타 논리합(XOR) ^ : 두 비트가 서로 다르면 1
7. 삼항 연산자
조건식 : 결과가 참 또는 거짓으로 나오는 식 (관계 / 논리 연산자)
조건식 ? 참일경우의 값 : 거짓일 경우의 값
ex)
int result = 10 > 9 ? 10 : 9;
String result = 10 > 9 ? "맞습니다" : "틀립니다";
// 실습 1.
// 입력받은 정수 양음수 판별
Scanner sc = new Scanner(System.in);
System.out.println("정수를 입력하세요 ");
int num = sc.nextInt();
String msg = num > 0 ? "양수" : "음수";
System.out.println(msg);
8. 대입 연산자
+= : a = a + b
-+ : a = a - b
*= : a = a * b
/= : a = a / b
%= : a = a % b
결합성 : 하나의 수식에 동일한 연산자가 여러개 사용되면 알맞은 방향으로 결합되어 연산되는 성질