자바 프로그래밍 언어에서 변수를 활용하기 위해서는 반드시 연산자를 사용해야만 한다.
단항 연산자 (Unary)
하나의 피연산자에 대해 작용하는 연산자이다.
+ | 피연산자의 값을 양수로 만든다. |
- | 피연산자의 값을 음수로 만든다. |
++ | 피연산자의 값을 1 증가시킨다. |
-- | 피연산자의 값을 1 감소시킨다. |
! | boolean 데이터 타입의 피연산자 값을 반전시킨다. (false/true) |
여기서 증가/감소 연산자는 피연산자의 앞이나 뒤에 적용할 수 있다.
전위 연산자(Prefix)는 피연산자 앞에 배치되며 연산을 수행하기 전에 변수의 값을 1 증가/감소시킨다.
후위 연산자(Postfix)는 피연산자 뒤에 배치되면 연산을 수행한 후에 변수의 값을 1 증가/감소시킨다.
이항 연산자 (Binary)
두 개의 피연산자를 필요로 하는 연산자이다.
연산의 좌황과 우황에 위치하며, 이항 연산자가 이들을 조작하여 값을 생성한다.
예시로 A + B에서 A와 B는 이항 연산자 (+)의 피연산자이다.
단순 할당 연산자 (The Simple Assignment)
기본적인 사칙연산을 수행하는 연산자를 제공한다.
+ | 피연산자 두 개를 서로 합친 값을 반환한다. |
- | 두 개의 피연산자에서 전자에서 후자를 뺀 값을 반환한다. |
* | 피연산자 두 개를 서로 곱한 값을 반환하는 반환한다. |
/ | 두 개의 피연산자에서 전자를 후자로 나누는 값을 반환한다. |
% | 두 개의 피연산자에서 전자를 후자로 나누고 남은 값을 반환한다. |
+연산자는 두 개의 문자열을 연결하는데도 사용할 수 있다.
등호 및 관계 연산자 (Equality, Relational)
한 피연산자가 다른 연산자보다 큰지, 작은지, 같은지, 다른지를 판단하는 연산자이다.
== | 두 개의 피연산자의 값이 같으면 ture를 아니면 false를 반환한다. |
!= | 두 개의 피연산자의 값이 다르면 ture를 아니면 false를 반환한다. |
> | 두 개의 피연산자에서 전자가 후자보다 크면 ture를 아니면 false를 반환한다. |
>= | 두 개의 피연산자에서 전자가 후자보다 크거나 같으면 ture를 아니면 false를 반환한다. |
< | 두 개의 피연산자에서 후자가 전자보다 큰면 ture를 아니면 false를 반환한다. |
<= | 두 개의 피연산자에서 후자가 전자보다 크거나 같으면 아니면 false를 ture를 반환한다. |
조건 연산자 (Conditional)
단축 평가 (Short-Circuiting)을 사용하는 연산자로 두 번째 피연산자는 필요한 경우에만 연산된다.
조건식에서 전자가 조건에 맞지 않으면 후자는 연산하지 않습니다.
&& | 여러개의 조건식이 결과가 모두 ture이면 ture를 아니면 false를 반환한다. |
|| | 여러개의 조건식 결과 중 하나만 true여도 ture를 아니면 false를 반환한다. |
? A : B | 조건식의 결과가 true이면 A를, false이면 B를 반환한다. |
instanceof 연산자
피연산자의 객체를 지정된 타입과 비교하는 연산자이다.
객체가 특정 클래스의 인스턴스인지, 하위 클래스의 인스턴스인지 확인할 수 있다.
class Parent {}
class child extends Parents implements C
intertface C {}
Parent A = new Parent();
Parent B = new Child();
System.out.println((A instanceif Parent));
System.out.println((A instanceif Child));
System.out.println((A instanceif C));
System.out.println((B instanceif Parent));
System.out.println((B instanceif Child));
System.out.println((B instanceif C));
결과값
true
false
true
false
true
true
true
# instanceif 연산자를 사용할때 null은 어떠한 클래스의 인스터스도 아니다.
비트와 비트 시프트 연산자 (Bitwise and Bit Shift)
정수형에 대한 비트 연산을 수행하는 연산자이다.
~ | 비트 패턴을 반전시킨다. (0을 1로, 1을 0으로 반전한다.) |
<< | 비트 패턴을 왼쪽으로 주어진 숫자 만큼 시프트한다. |
>> | 비트 패턴을 오른쪽으로 주어진 숫자 만큼 시프트한다. |
>>> | 비트 패턴을 오른쪽으로 주어진 숫자 만큼 시프트하고 빈공간을 0으로 채운다. |
& | 두 개의 비트를 비교하여 둘다 1이면 1을 아니면 0을 반환한다. (AND) |
| | 두 개의 비트를 비교하여 하나라도 1이면 1을 아니면 0을 반환한다, (OR) |
^ | 두 개의 비트를 비교하여 둘다 다르면 1을 아니면 0을 반환한다. (XOR) |
'자바 튜토리얼' 카테고리의 다른 글
클래스와 객체 (Classes and Objects) [1] (0) | 2024.07.02 |
---|---|
객체 지향 프로그래밍 (Object-Oriented Programming) (0) | 2024.07.02 |
제어 흐름 명령문 (Control Flow Statements) (0) | 2024.07.01 |
표현식(Expressions)과 명령문(Statements), 블록(Block) (0) | 2024.06.28 |
변수(Variables) (0) | 2024.06.28 |