티스토리 뷰

TIL/JAVA

연산자

YEIKKI 2022. 12. 21. 00:37

연산자의 우선순위 와 결합 법칙은 "세가지만 기억하자"

  1. 산술> 비교> 논리> 대입
  2. 단항(1)>이항(2)>삼항(3) 단항 연산자의 우선순위가 이항 연산자보다 높다.
  3. 단항 연산자와 대입 연산자를 제외한 모든 연산의 진행방향은 왼쪽에서 오른쪽이다

증감 연산자

전위형 j =++i;    ---->    ++ i 증가 후 

                                        j= i; 참조하여 대입 후

후위형 j =i++;    ----> j= i; 참조하여 대입후 

                                        i++; 증가

 

i ++;  = ++ i;

독립적으로 사용 시 차이가 없다.

 

형 변환

변수 or 상수의 타입을 다른 타입으로 변환하는 것

 

double c= 84.5;

int score= (int)c;

int score=(int) 84.5;

int score=84;

 

자동 형변환

컴파일러가 생략된 형변환을 자동적으로 추가해줌

기존의 값을 최대한 보존할수있는 타입으로 변환됨.

 

float f = (float)1435;  (묵시적 형변환)

int형 1435를 float로 변환 (float)생략

 

byte b =1000; 오류

byte b= (byte) 1000; (명시적 형변환) 값손실 발생  변수 b -24저장됨

 

  • 기본형(boolean 제외) 형변환가능
  • 기본형과 참조형은 형변환 불가

 

두 피연산자의 타입을 같게 일치시킨다.(보다 큰 타입으로 일치)

long + int --> long +long --> long

float + int ---> float + float---> float

double+float---> double + double---> double

 

피연산자의 타입이 int 보다 작은 타입이면 int로 변환됨

byte +short--> int + int ---> int

char + short --> int + int ---> int 

 

큰 자료형의 값을 작은 자료형의 변수에 저장하려면 명시적으로 형 변환 연산자를 사용해서 변환해야 함

이에 따른 데이터 손실(값 손실)이 난다.

 

나머지 연산자

 10 % 8 =2

나머지 값을 결과로 반환

비교연산자

대소비교 연산자

    <
    >
   >=
  <=

 

       비교연산자                        결과
            ==  두값이 같으면, true or false
             !=  두값이 다르면 ,true or false

논리 연산자

                                 OR 결합                            AND 결합
                                  ||                                  &&
     어느 한쪽이 true이면 true결과를 얻는다. 양쪽 모두 true이어야 true를 결과로 얻는다.

논리부정연산자

                             x                            !x
                         true                          false
                        false                        true

 

조건 연산자

조건식, 식 1 , 식 2 모두 세 개의 피연산자를 필요로 하는 삼항 연산자조건식의 평가결과가  true이면 식 1, false이면 식 2가 연산결과가 된다.

 

조건식? 식1 : 식2

 

result=(4>3)? 4: 3 참이기 때문에

result =4

 

대입 연산자

lvalue(left value)    rvalue(right value)

            x         =     3  

lvalue 반드시 변수처럼 값을 변경할 수있는 것만

rvalue 변수뿐만 아니라 식이나 상수등 모두 가능 

 

복합 대입 연산자

i += 3;   ---> i = i +3;위에 식만 외워두면 다른 식에도 똑같이 적용하면 됨

 


남궁성, 『자바의정석』, 도우출판

'TIL > JAVA' 카테고리의 다른 글

객체지향(OOP)메서드  (0) 2022.12.29
객체지향(OOP)Part1요약  (0) 2022.12.26
배열  (0) 2022.12.23
제어문  (0) 2022.12.22
특징 + 변수  (0) 2022.12.19