210730

Joy·2022년 2월 15일
1

JAVA

목록 보기
2/22

연산자

  • 연산자 종류와 우선 순위
  • 최우선 연산자
    ex)소괄호()
  • 단항 연산자

  • 이항 연산자
    -산술 연산자(사칙연산)
    -비교 연산자
    -논리 연산자(참, 거짓)

  • 삼항 연산자
  • 대입 연산자
    -순수 대입
    -복합 대입

  • 나열 연산자

  • 단항 연산자

  • 증감 연산자 : ++(가지고 있는 값이 +1),--(가지고 있는 값이 -1)

1.피연산자의 값에 1을 더하거나 빼는 연산자. 위치에 따라 결과 값이 다르게 나타난다.

ex) a + b (+ : 연산자, a,b : 피연산자)

2.전위 연산 : 먼저 연산 후 다른 연산 실행

ex) ++a, --a

3.후위 연산 : 다른 연산 우선 실행 후 연산

ex) a++, a--

  • 논리 부정 연산자 : !

논리 값을 부정하여 반대 값으로 변경한다. 제어문을 활용할 때 많이 쓰인다.

ex) boolean bool1 = true;
    boolean bool2 = !bool1;
    System.out.println(bool2);  -> false

  • 산술 연산자

일반 수학과 동일한 연산 방법, 우선순위.
단, %(모듈러, Modular)는 나누기의 나머지 값을 구하는 연산이다.

* / % 연산자 예시

int a = 10, b = 20, c = 0;
c = a * b;  -> 200
c = a / b;  -> 0.5
c= a % b;  -> 10

+ - 연산자 예시

int a = 10, b = 20, c = 0;
c = a + b;  -> 30
c = a - b;  -> -10

'/' 연산 시 형 변환에 유의해야 한다.

  • 비교 연산자

데이터가 같은지, 다른지 비교할 때 쓰이며 항상 논리 값(true, false)이 결과 값이다.
모든 자료형(기본형, 참조형) 사용 가능하다. *참조형은 주소값이 같은지 비교

ex) a == b : a와 b가 같으면 true
    a != b : a와 b가 다르면 true

두 피연산자의 값의 크기 비교
: 기본형 boolean과 참조형을 제외하고 나머지 자료형에 모두 사용 가능하다.

  • 논리 연산자

논리 값 두 개를 비교하는 연산자

&& : 두 피연산자가 모두 true일 때 true 반환(AND)
|| : 두 피연산자 중 하나만 true여도 true 반환(OR)

컴퓨터는 논리연산을 검사할 때 short cut 연산을 한다.
따라서 앞의 값이 true라면 뒤의 값은 검사하지 않고 짧게 끊어버린다

  • 복합 대입 연산자

다른 연산자와 대입 연산자가 결합한 것.
자기 자신과 연산 후 연산 결과를 자기 자신에게 누적 대입한다.(코드가 간결하여 메모리에 직접 연산을 수행하여 연산속도가 빠르다.)

ex) a += 10  -> 10에 a을 더하고 그 값을 다시 a라는 변수에 대입(피연산자들의 결합방법은 오른쪽에서 왼쪽)

*증감 연산과 비슷해 보이지만 증감연산자(++, --)는 1씩 증가, 감소하는 것이고,
대입 연산자는 원하는 값을 증가시키고 그 변수에 저장 가능하다.

  • 삼항 연산자 (조건식 ? 식1 : 식2;)

조건식의 결과 값에 따라 연산을 처리하는 방식으로 결과 값이 참일 경우 식1, 거짓일 경우 식2 실행.
삼항 연산자 안에 삼항 연산자를 중첩하여 쓰는 것도 가능하다.

ex) int result1 = a > b ? a++ : b--;  -> a가 b보다 크다면 a++실행, 작다면 b--실행
    int result2 = a < b ? a++ : (b == 0 ? a-- : b++);  -> a가 b보다 작다면 a++실행, 크다면 중첩된 삼항 연산자의 식을 실행
profile
👻

0개의 댓글