3.14 * radius 에서 3.14와 radius는 피연산자, *(곱하기)는 연산자이다.
public class OperEx01 {
public static void main(String[] args) {
System.out.println(1+1);
System.out.println(1-1);
System.out.println(2*2);
System.out.println(4/2); // 나눗셈의 몫을 출력. 결과값 : 2
System.out.println(3%2); // 나눗셈의 나머지값을 출력. 결과값 : 1
System.out.println(10/3); // 정수로나누면 →결과값 : 3
System.out.println(10/3.0); // 실수로 나누면 → 결과값 : 3.3333
}
}
public class OperEx02 {
public static void main(String[] args) {
System.out.println(1==1); // true
System.out.println(!(1==1)); // false
System.out.println(!true); // false
System.out.println(1!=1); // false
System.out.println(1>3); // false
System.out.println(1<3); // true
}
}
public class OperEx03 {
public static void main(String[] args) {
System.out.println(true&&false); // and
System.out.println(true||false); // or
}
}
int num = 2;
num=num+1;
System.out.println(num);
✍️ num = num+1 는 어떻게 계산되는걸까?
코드는 오른쪽부터 값을 읽기 때문에 오른쪽에 있는 값인 'num+1'부터 읽는다.
오른쪽의 연산 처리가 완료되면 왼쪽의 num에 오른쪽의 값 num+1이 재할당된다.
✍️ num++
num++는 num값에 1을 더하는 연산자로, num+1과 비슷한 기능을 지닌다.
public class OperEx04 {
public static void main(String[] args) {
int num =1;
num =2;
System.out.println(num);
num=num+1;
System.out.println(num);
num++;
System.out.println(num);
}
}
고로 위 코드의 결과값은
2
3
4
이다.
단항 연산자 중 1씩 증가하거나 감소하는 연산자를 증감연산자라고 한다.
중요한 점은 증감 연산자의 ++, --위치가 변수 앞, 뒤에 오느냐에 따라 결과값이 달라진다.
후위 증감연산자 실행순서
b = a++; (또는 a- -;)
1) a를 b에 대입함
2) a를 1씩 증가시킴
전위 증감연산자 실행순서
b = ++a; (또는 - - a;)
1) a를 1씩 증가시킴
2) a를 b에 대입함
int x = 1;
int y = 1;
int nextx = ++x; // x의 값이 증가된 후에 사용된다. nextx는 2이 된다.
int nexty = y++; // y의 값이 사용된 후에 증가된다. nexty는 1이 된다.