Notice
Recent Posts
Recent Comments
Link
목록2진수 (1)
MSM8994의 화룡점정 블로그
Java 자료형 범위 초과시 자료가 저장되는 방식
위 코드에서 b+i 대신 (char) (b+i) 를 하면 범위가 초과되어 다른 수가 저장되고, 0x12340041을 char로 강제변환한 결과가 0x0041이 되는지 이해하기 힘드셨을것 같습니다 byte의 범위는 -128부터 -1까지 음수 128개, 0부터 127까지 양수 128개 총 256가지의 수를 표현할 수 있습니다.유니코드 문자 하나를 저장하는 char는 0x0000부터 0xFFFF까지 65536가지를 표현할 수 있습니다.JDK 8부터 int와 long도 양수전용(unsigned)이 될 수 있다고 하지만 그냥 Java에선 양음수 둘 다 표현하기 위해 양수 범위가 반토막 나있다고 생각하시는게 편합니다. 여기서 b+i는 227입니다. 이미 b가 byte상 양수 최대치인 127(0111 1111)에 왔..
코딩
2018. 7. 12. 07:00