byte a = 3;
byte b = 4;
byte c = (byte)(a + b);
byte d = 3 + 4;
보니깐 a + b 이렇게 하면 스택에 int로 올리고 int로 연산하는데
3 + 4 이렇게 하면 bipush로 그냥 byte로 스택에 올리고 더해버림
아니네 ?
빠져나올땐 인트로 빠져나오는거같은데
왜 그러지? 사실 알아낸건 아니고 바이트코드를 봐도 잘 모르겠어
byte a = 3;
byte b = 4;
byte c = (byte)(a + b);
byte d = 3 + 4;
보니깐 a + b 이렇게 하면 스택에 int로 올리고 int로 연산하는데
3 + 4 이렇게 하면 bipush로 그냥 byte로 스택에 올리고 더해버림
아니네 ?
빠져나올땐 인트로 빠져나오는거같은데
왜 그러지? 사실 알아낸건 아니고 바이트코드를 봐도 잘 모르겠어
ㅠㅠㅠㅠㅠ 왜그럴까 왜그럴까 궁금해 궁금해