[英]interpret float bits as long in java?
Tt不是正常的“類型轉換”。
我只想有一個等效的Java用於:
long i;
float y;
i = * ( long * ) &y;// C code
一些人可能猜到我只想試試這個
這是C代碼,問題是如何在Java中制作它,因為那里沒有指針和引用,是的,我實現了它,並且以1 / Math.sqrt()的方式運行得更快,而在第4個符號上首先出現錯誤!
靜態方法Float.floatToRawIntBits()
正是這樣做的。 還有Float.floatToIntBits()
,其NaN
處理語義略有不同。
逆變換是Float.intBitsToFloat()
。
如果您想知道為什么它是int
而不是long
,那么Java int
是32位寬(與float
)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.