为什么(byte)128等于
生活随笔
收集整理的這篇文章主要介紹了
为什么(byte)128等于
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
byte的取值范圍是-128~127, 128溢出了
是因為java的自動轉型導致的,原理如下:1、 128為int整數32位,前24為全部為0 后8位是1000 00002、(byte)128 轉型為byte后首位是1,java認為是負數的補碼標識4、所以輸出的為-128
tip:java在做字節操作的時候應為會發生自動的類型轉換,又不支持無符號整數,要特別注意,通常需要使用與操作屏蔽掉自動擴展導致的錯誤的bit
是因為java的自動轉型導致的,原理如下:1、 128為int整數32位,前24為全部為0 后8位是1000 00002、(byte)128 轉型為byte后首位是1,java認為是負數的補碼標識4、所以輸出的為-128
tip:java在做字節操作的時候應為會發生自動的類型轉換,又不支持無符號整數,要特別注意,通常需要使用與操作屏蔽掉自動擴展導致的錯誤的bit
總結
以上是生活随笔為你收集整理的为什么(byte)128等于的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 双结虎皮蛋的做法?
- 下一篇: 如果有机会,大家是选择跟邱淑贞吃一顿烛光