자바(Java)1 [자바] 데이터 자료형(data type)을 공부하면서 알게 된 것 데이터 오버플로우, 언더플로우를 공부하다가 재밌는 사실을 알게 되었다. byte 타입의 최솟값인 -128에 -128을 더하면 0이 되는 것을 확인 하고 싶었는데 이렇게 연산을 하면 결과가 0으로 출력되는데 더해서 연산하면 Type mismatch: cannot convert from int to byte 이러한 에러가 발생하는 것이다! 처음에는 뭔가 싶었는데 곰곰히 생각해보니 첫번째로 수행한 연산은 바이트가 저장할 수 있는 최솟값에 -128을 더해서 언더플로우가 발생한 것이고, 두번째로 수행한 연산은 바이트 변수가 저장할 수 있는 최솟값이 -128인데 변수에 -256를 저장하려 시도해서 발생한 에러였다! 늘 느끼는 거지만... 컴퓨터는 거짓말을 안해... 내가 이상한 명령을 내린 것 뿐..! 2020. 2. 15. 이전 1 다음