본문 바로가기

Java를 자바

[Java] 연산자

연산자 종류

산술 연산자

: +, -, *, /, % (나머지 연산자)

    • : 문자열 더하기도 가능 (문자열을 이어줌)
  • / : 나누기 0으로 나누면 오류가 발생함
  • % : 나머지
  • 연산자 우선순위에 따라서 계산이 된다. *, /, % 먼저 +,- 나중 (괄호가 항상 먼저!)

증감 연산자

: ++, -- → 단독으로 사용하면 전위, 후위 상관 없이 자기 값만 증감

  • 전위 증감 연산자 ++a
public class Var1 {
    public static void main(String[] args) {
        int a = 1;
        int b = 0;

        b = ++a; // a 값을 먼저 증가시키고, 그 값을 b에 대입
        System.out.println(b);
        
        // 같은 의미
        a = a + 1; // a 값 먼저 증가
        b = a; // a 값 대입
    }
}

// 2 출력
  • 후위 증감 연산자 a++
public class Var1 {
    public static void main(String[] args) {
        int a = 1;
        int b = 0;

        b = a++; // a 값을 먼저 대입시키고, a 값 증가
        System.out.println(b);
        
        // 같은 의미
        b = a; // a 값 먼저 대입
        a = a + 1; // a 값 증가
    }
}

// 1 출력

비교 연산자

: ==, !=, >, <, >=, <=

  • 문자열 비교 .equals() 메서드 사용해야 함
public class Var1 {
    public static void main(String[] args) {
        String str1 = "문자열1";
        String str2 = "문자열2";

        boolean result1 = "hello".equals("hello"); //리터럴 비교
        boolean result2 = str1.equals("문자열1"); //문자열 변수, 리터럴 비교
        boolean result3 = str1.equals(str2); //문자열 변수 비교

        System.out.println(result1); 
        System.out.println(result2); 
        System.out.println(result3);
    }
}

논리 연산자

  • && (AND) : 둘 중 하나라도 거짓이면 거짓, 둘 다 참이어야
  • || (OR) : 둘 다 거짓이면 거짓, 하나라도 참이면 참
  • ! (NOT) : 논리적 부정을 반환, 참이면 거짓을 거짓이면 참

대입 연산자

: =, +=, -=, *=, /=, %=

  • 계산한 값을 대입한다는 의미 (+, -, *, /, %한 값을 대입)

삼항 연산자

: ? :

  • 변수 = 조건 ? 참일 때 값 : 거짓일 때 값

연산자 우선 순위

  1. 괄호 ()
  2. 단항 연산자 (ex. ++, —, !, ~, new, (type))
  3. 산술 연산자 (*, /, % 우선, +, - 나중)
  4. Shift 연산자 (<<, >>, >>>)
  5. 비교 연산자
  6. 등식 연산자 (==, !=)
  7. 비트 연산자 (&, ^, |)
  8. 논리 연산자 (&&, ||, !)
  9. 삼항 연산자
  10. 대입 연산

'Java를 자바' 카테고리의 다른 글

[Java] 스코프  (2) 2024.04.11
[Java] 반복문 | while, for  (0) 2024.04.11
[Java] 변수  (0) 2024.04.02
[Java] 자바란?  (0) 2024.04.02
[Java] Intellij 개발 환경 설정하기, 프로젝트 생성  (0) 2024.04.02