0
如何byte b= (byte)400
是一個有效的陳述,但400
超出範圍?我想知道java用來將400
帶入字節範圍內的算法。java使用什麼算法將int轉換爲byte?
如何byte b= (byte)400
是一個有效的陳述,但400
超出範圍?我想知道java用來將400
帶入字節範圍內的算法。java使用什麼算法將int轉換爲byte?
它需要400個二進制表示中最不重要的8個字節,並將它們分配給byte
變量。
的int
400二進制表示:
00000000000000000000000110010000
--------
服用時低8位,你會得到10010000
,這是-112二進制表示。
您可以在Oracle教程的所有細節:轉換和促銷#變窄(http://docs.oracle.com/javase/specs/jls/se7/html/jls-5.html#jls-5.1 .3)(30秒谷歌搜索雖然) – BackSlash