728x90
2 이항 연산(Binary operator)
단항 연산자는 피연산자가 1개라면 이항 연산자는 피연산자가 2개인 연산자를 뜻한다.
연산식 | 설명 | |||
피연산자 | + | 피연산자 | 덧셈 연산 | |
피연산자 | - | 피연산자 | 뺄셈 연산 | |
피연산자 | * | 피연산자 | 곱셈 연산 | |
피연산자 | / | 피연산자 | 왼쪽 피 연산자를 오른쪽 피 연산자에 나눗셈 연산 | |
피연산자 | % | 피연산자 | 왼쪽 피 연산자를 오른쪽 피 연산자에 나눈 나머지를 구하는 연산 |
package sec02.exam04;
public class ArithmeticOperatorExample {
public static void main(String[] args) {
int v1 = 5;
int v2 = 2;
int result1 = v1 + v2;
System.out.println("result1=" + result1);
int result2 = v1 - v2;
System.out.println("result2=" + result2);
int result3 = v1 * v2;
System.out.println("result3=" + result3);
int result4 = v1 / v2;
System.out.println("result4=" + result4);
int result5 = v1 % v2;
System.out.println("result5=" + result5);
double result6 = (double) v1 / v2;
System.out.println("result6=" + result6);
}
}
피연산자 타입이 동일하지 않을 경우 아래 규칙에 따라 일치시켜 연산 수행
- 피연산자가 byte, short, char 타입일 경우에 모두 int 타입으로 변환
- 피연산자 모두 정수 타입이고 long 타입 포함될 경우 모두 long 타입으로 변환
- 피연산자 중 실수 타입이 있을 경우 허용 범위 큰 실수 타입으로 변환
문자(Char) 데이터 형식의 연산
c1과 같이 리터럴에 직접 연산을 하게 될 시 A의 값 65와 +1을 인식하여 66으로 컴파일이 된다.
하지만 c3와 같이 변수를 이용해 산술 연산을 하게 되면 변수를 사용하는 과정에 int타입으로 변환이 되기 때문에 컴파일 에러가 발생한다.
char타입보다 int타입의 허용범위가 더 크기 때문에 위와 같이 int타입으로 저장해주어야 한다.
문자열 결합 연산자 (String Concatenation operator)
+연산자의 피연산자 중 한 쪽이 문자열인 경우
String str1 = "JDK" + 6.0; // 6.0 -> 문자열로 전환
String str2 = str1 + "특징"; // str2에 "JDK6.0 특징"이란 값이 저장됨
"JDK" + 3 + 3.0; // "JDK33.0" 산출
3 + 3.0 + "JDK"; // "6.0JDK" 산출
'JAVA > 혼자공부하는자바' 카테고리의 다른 글
[JAVA 기초] 조건문 (if문, switch문) (0) | 2020.12.10 |
---|---|
[JAVA 기초] 연산자의 종류 2 (이항 연산자, 삼항 연산자) (0) | 2020.12.09 |
[JAVA기초] 연산자의 종류 (단항 연산자) (0) | 2020.12.08 |
[JAVA기초] 연산자와 연산식 (0) | 2020.12.07 |
[JAVA기초] 변수와 시스템 입출력(2) (0) | 2020.12.06 |