Pre-Onboarding 2일차

최재하·2022년 11월 8일
0

연산자

x + y        x - y

연산에 사용되는 표시나 기호를 연산자라고한다.(+, -)
연산자와 함께 연산되는 데이터는 피연산자라고 한다.(x, y)

연산의 방향과 우선순위

프로그램에는 연산자의 연산 방향과 우선순위가 정해져있다

100 * 2 / 3 % 5

이렇게 같은 우선순위를 가지고있는 연산자들은 왼쪽에서 오른쪽 방향으로 연산이된다.
단항 연산자, 부호 연산자, 대입 연산자는 오른쪽에서 왼쪽으로 연산한다.
헷갈리면 ( )를 사용하는게 편할거같다 괄호 부분의 연산은 최우선순위를 가진다.

연산자의 종류

  • 단항 연산자
    피연산자가 단 하나뿐인 연산자를 말한다 부호 연산자(+,-), 증감연산자(++,--),
    논리 부정 연산자( ! )가 있다.
    • 증감 연산자(++, --)
      변수의 값을 1 증가(++)시키거나 1감소(--)시키는 연산자.
      ++x  --x  다른연산을 수행하기전에 피연산자의 값을 1증가시키거나 감소시킴.
      x++  x--  다른연산을 수행한 후에 피연산자의 값을 1증가시키거나 감소시킴.
      다른 연산자와 함께 사용하면 증감 연산자의 위치에따라 결과가 다르게 나올 수 있다
    • 논리 부정 연산자( ! )
      true를 false로, false를 true로 변경하기 때문에 boolean 타입에만 사용가능하다
  • 이항 연산자
    피연산자가 2개인 연산자를 말한다 산술, 문자열 결합 ,비교 ,논리 ,대입 연산자 등이 있다
    • 산술연산자(+, -, *, /, %)
      산술 연산자는 사칙연산자 +, - , /, *랑 나눗셈의 나머지를 구하는 % 까지 5개이다
    • 문자열 결합 연산자(+)
      피연산자 중 한쪽이 문자열이면 + 연산자는 문자열 결합 연산자로 사용되어
      다른 피연산자를 문자열로 변환하고 결합한다.
      String str1 = "JDK" + 6.0;
      다음 연산의 결과는 6.0이 문자열로 변환되고 결합되기때문에 JDK6.0이다.
    • 비교연산자(<, <=, >, >=, ==, !=)
      boolean을 제외한 기본 타입에 사용할 수 있고, (==, !==)이 두가지 연산자는
      boolean에도 사용가능 비교연산자는 주로 흐름 제어문인 조건문,반복문에서 사용한다.
    • 논리연산자(&&, ||, &, |, ^, !)
      논리연산자는 boolean타입에만 사용가능하다.
      &&와&은 결과는 같지만 연산과정이 조금 다르다 &&은 앞의 피연산자가 false라면 뒤의
      피연산자를 평가하지않고 false이라는 결과를 내지만 &은 두 연산자를 모두 평가하고
      결과를낸다 다라서 &보다 &&가 더 효율적이다 |와||도 마찬가지로 ||가 더 효율적이다.
    • 대입 연산자(=, +=, -=, *=, /=, %=)
      대입연산자는 오른쪽 피연산자의 값을 왼쪽 피연산자인 변수에 저장한다.
      대입연산자는 가장 낮은 연산 순위를 가지고있다 연산진행방향은 오른쪽에서 왼쪽.
  • 삼항 연산자
    삼항 연산자(?:)는 3개의 피연산자를 필요로 하는 연산자를 말한다.
    (조건) ? A : B 조건이 true면 A false가 나오면 B라는 결과가 나온다.
    int score = 95;
    char grade = (score > 90) ? 'A' : 'B';
    System.out.println(score + "점은" + grade + "등급입니다."); //95점은 A등급입니다.
    
    int score = 85;
    char grade = (score > 90) ? 'A' : 'B';
    System.out.println(score + "점은" + grade + "등급입니다."); //85점은 B등급입니다.

연산자는 나중에 적용할때 많이 헷갈릴꺼같다
나중에 정리해놓은거 자주 볼거같다

0개의 댓글