【发布时间】:2017-01-23 09:21:04
【问题描述】:
尽管400 超出范围,byte b= (byte)400 如何是有效语句?我想知道java用来将400带入字节范围内的算法。
【问题讨论】:
-
您可以在 Oracle 教程中找到所有详细信息:Conversions and Promotions#Narrowing(不过 30 秒谷歌搜索)
尽管400 超出范围,byte b= (byte)400 如何是有效语句?我想知道java用来将400带入字节范围内的算法。
【问题讨论】:
它取二进制表示的 400 的最低有效 8 个字节,并将它们分配给 byte 变量。
int 400 的二进制表示是:
00000000000000000000000110010000
--------
取低 8 位时,得到10010000,即-112 的二进制表示。
【讨论】: