6
我使用Math.round,發現它不會返回任何大於(2^32/2)-1的值,但文檔指出它可以/將返回長整型值,即2^64 ...下面有一個代碼片段。Math.round MAX可退還價值
long bTmp = (long)Math.round(4294967296L);
System.out.println(bTmp);
System.out.println(Long.MAX_VALUE);
其輸出:
2147483647
9223372036854775807
我缺少的東西?
我想補充的是什麼做的一些信息:http://docs.oracle.com/javase/specs/jls/se7/html/jls-5.html#jls- 5.1.2默認情況下,從長到寬都有擴大。爲了強制雙重行爲,它必須被鑄造。 – 2012-04-03 12:47:25