본문 바로가기
Programming Language/Java

[Java/개념] 자바 연산자 (Operators)

by wo__ongii 2024. 10. 7.
728x90
반응형

1. 대입 연산자 (Assignment Operator)

  • = : 변수에 값을 대입하는 연산자이다.
int a = 5;

 

2. 산술 연산자 (Arithmetic Operators)

  • +, -, *, /, % : 덧셈, 뺄셈, 곱셈, 나눗셈, 나머지 연산을 수행한다.
    • 주의: 정수형끼리 나눗셈을 할 경우 소수점 아래 자리는 버려진다.
    • 실수형은 소수점 아래까지 나누어진다.
int one = 5, two = 3;
System.out.println("뺄셈 결과 >> " + (one - two));  // 괄호 필수

3. 복합 대입 연산자 (Compound Assignment Operators)

  • +=, -=, *=, /=, %= : 대입과 산술 연산을 한 번에 처리한다.
int one = 5, two = 3;
one += two;  // one = one + two;
System.out.println("one >> " + one);  // 결과: one >> 8

4. 관계 연산자 (Relational Operators)

  • >, <, >=, <=, ==, != : 두 값을 비교하고, 결과로 true 또는 false를 반환한다.
int one = 5, two = 3;
System.out.println("크니? " + (one > two));    // true
System.out.println("같니? " + (one == two));  // false
System.out.println("다르니? " + (one != two));  // true

 

5. 논리 연산자 (Logical Operators)

  • &&, ||, ! : 논리식 간의 AND, OR, NOT 연산을 수행한다.
    • && : 두 조건이 모두 참일 때 true
    • || : 두 조건 중 하나만 참이면 true
    • ! : 논리값을 반전시킴
boolean result1, result2, result3;
result1 = (one > 4) && (two > 4);  // false
result2 = (one > 4) || (two > 4);  // true
result3 = !(one > 4);  // false

 

6. 증가/감소 연산자 (Increment/Decrement Operators)

  • ++, -- : 변수 값을 1씩 증가 또는 감소시킨다.
    • 전치 연산: ++a (증가 후 사용)
    • 후치 연산: a++ (사용 후 증가)
int a = 5;
System.out.println(++a);  // 6 (전치 증가)
System.out.println(a++);  // 6 (출력 후 증가)
System.out.println(a);    // 7

7. 비트 연산자 (Bitwise Operators)

  • &, |, ^, ~, <<, >>, >>> : 비트 단위로 연산을 수행한다.
    • &: 두 비트가 모두 1일 때 1
    • |: 두 비트 중 하나라도 1일 때 1
    • ^: 두 비트가 다를 때 1
    • ~: 비트를 반전시킴
    • <<: 비트를 왼쪽으로 이동 (2배씩 증가)
    • >>: 비트를 오른쪽으로 이동 (2배씩 감소)
    • >>>: 부호 없는 오른쪽 이동
int a = 5;  // 0101
int b = 3;  // 0011

System.out.println(a & b);  // 1 (0001)
System.out.println(a | b);  // 7 (0111)
System.out.println(a ^ b);  // 6 (0110)
System.out.println(~a);     // -6 (비트 반전)

 

8. 삼항 연산자 (Ternary Operator)

  • (조건) ? 참일 때 값 : 거짓일 때 값;
    조건에 따라 두 값 중 하나를 반환한다.
int num = 5;
String result = (num > 10) ? "크다" : "작다";
System.out.println(result);  // "작다"

9. 자바 연산자 우선순위 (Operator Precedence)

자바 연산자에는 우선순위가 있다. 예를 들어, 산술 연산자는 관계 연산자보다 우선적으로 수행되며, 관계 연산자는 논리 연산자보다 우선된다. 괄호를 사용해 연산 순서를 명확하게 지정하는 것이 좋다.

 

 

 

 

 

[출처: 열혈 Java 프로그래밍 - 윤성우]

728x90
반응형