JAVA/연산자

이항 연산자1

yayeun 2017. 1. 24. 20:35

산술 연산자(+, -, *, /, %)

: boolean 타입을 제외한 모든 기본타입에 사용 가능하다.


 연산식 

설명 

 피연산자 

 + 

 피연산자 

덧셈 연산 

 피연산자 

 - 

 피연산자 

 뺄셈 연산 

 피연산자 

 * 

 피연산자 

 곱셈 연산 

 피연산자 

 / 

 피연산자 

 좌측 피연산자를 우측 피연사로 나눗셈 연산 

 피연산자 

 % 

 피연산자 

 좌측 피연산자를 우측 피연산자로 나눈 나머지를 구하는 연산 


: 피연산자들의 타입이 동일하지 않을 경우 피연산자들의 타입을 일치시킨 다음 연산을 수행한다.

1. 피연산자들의 타입은 모두 정수타입이고 연산의 산출타입은 int 타입이다. (JVM:자바가상기계 가 기본적으로 32 비트 단위로 계산하기 때문)

  : byte + byte -> int + int = int


2. 피연산자들의 타입은 모두 정수타입이고 long 타입이 있을 경우 모든 타입을 long 타입으로 변환한다. 즉 산출타입은 long 타입이다.

  : int + long -> long + long = long


3. 피연산자 중 실수타입이 있을 경우, 크키가 큰 실수 타입으로 변환한다. 즉 산출타입은 실수 타입이다.

  : int + double -> double + double = double


  - 크기 : int 타입 > long 타입 > 실수 타입


1
2
3
4
5
6
char c1 = 'A' + 1;  //B
char c2 = 'A';  // A
char c3 = c2 +1;   //컴파일 에러 : 산출타입은 int 타입인데 값을 담는 변수타입은 char 이므로
 
//char 타입으로 산출을 원한다면 강제 타입변환을 시켜준다.
char c4 = (char)(c2 +1);
cs


'JAVA > 연산자' 카테고리의 다른 글

삼항연산자  (0) 2017.01.27
이항 연산자3  (0) 2017.01.27
이항 연산자2  (0) 2017.01.27
단항 연산자  (0) 2017.01.24
연산자와 연산식  (0) 2017.01.24