int var1=5;
int var2=2;
double var3=var1/var2;
int var4=(int)(var3*var2);
System.out.println(var4);
실수형 변수인 double 까지만 봤을 땐 var1/var2 를 하였을 시 2.5 가 출력이 될 텐데, 그 다음 줄에서 실수형 변수가 아닌 정수형 변수 int 를 사용함으로써 var3 이 2.5 가 아닌
소수점을 뺀 정수 2 까지만 저장하였기 때문에 var3*var2 의 값은 4 가 나오게 된다!
int x=10;
int y=20;
int z = (++x) + (y--);
System.out.println(z);
증감 연산자를 계산함에 있어 증감연산자 끼리는 ++-- 리터럴 앞이나 뒤에 오게 되더라도
항상 먼저 계산 후 진행이 되지만, 지금은 (++x) 과 (y--) 사이에 + 연산자가 있기 때문에
++ 의 값인 1과 x 의 값인 10이 먼저 더해진 값 11 과 y 의 값인 20만 더하고 y 뒤에 있는
-- 는 적용되지 않는다!(반복문 같은 경우 사용이 되어질 것 같다.)
출력 결과 값은 31 이다.
public class QnA03 {
public static void main(String[] args) {
while (true){
int num1 = (int) (Math.random() * 6) +1;
int num2 = (int) (Math.random() * 6) +1;
System.out.println("(" + num1 + ", " + num2 + ")");
if ((num1 + num2) == 5){
break;
}
}
}
}
//Math.random 을 이용해 주사위 수 안에서 랜덤으로 설정이 되도록 했고 num1 과 num2 의
//합이 5가 되면 break 를 걸도록 했다.