我編譯的代碼錯誤地嘗試添加一個數字和Double.NaN。我想知道是否拋出了一個沒有被捕獲的異常?有誰知道這種情況是如何處理的?
謝謝。在Java中,如果在操作中使用Double.NaN會發生什麼?
6
A
回答
6
添加一個數字給NaN給出NaN。預計不會引起例外。我知道這符合IEEE 754.
0
public static void main(String args[])
{
Double d = Double.NaN + 1.0;
System.out.println(d);
}
打印Double.Nan。任何人都可以解釋源代碼實現?
public static final double POSITIVE_INFINITY = 1.0/0.0;
public static final double NEGATIVE_INFINITY = -1.0/0.0;
public static final double NaN = 0.0d/0.0;
1
要回答史蒂夫B的問題:
POSITIVE_INFINITY是,如果你有無限的存儲空間,可以存儲最大陽性數。如果沒有這種奢侈品,我們不得不使用像1.0/0.0這樣的結構,它做得很好。 NEGATIVE_INFINITY也是一樣,但是最大的負數。
NaN通常定義爲0.0/0.0,因爲沒有0/0這樣的數字,因此完全符合NaN的條件。
相關問題
- 1. 在按位操作中使用時會發生什麼?
- 2. 如果在std :: map中操作不存在的鍵值對會發生什麼?
- 3. 如果我在子進程中使用wait()會發生什麼?
- 4. 如果我在OnPaint()函數中使用CClientDC會發生什麼?
- 5. 如果我在IntentService中使用AsyncTask會發生什麼?
- 6. 如果在Git中同時執行多個操作會發生什麼?
- 7. 爲什麼將Double.NaN轉換爲int不會在Java中引發異常?
- 8. 如果HttpClient.execute()中斷會發生什麼?
- 9. 如果TableBatchOperation的一個操作失敗會發生什麼?
- 10. 在java中使用的數組會發生什麼
- 11. 如果我在main中調用fork(),會發生什麼?
- 12. 在Java中,如果我將DatagramPackets留在DatagramSocket上會發生什麼?
- 13. 如果我在鏈接時不使用-g,會發生什麼
- 14. 如果你不在課堂上使用「this」會發生什麼?
- 15. 在TensorFlow中,如果在map_fn中調用get_variable,會發生什麼共享變量
- 16. 如果我在XCODE中重命名文件會發生什麼?
- 17. 如果我在OnTouchListener中返回false,會發生什麼?
- 18. 如果我在表中刪除分區會發生什麼?
- 19. 如果action類在struts中返回null,會發生什麼?
- 20. 如果我在工廠類中實現ThreadLocal會發生什麼
- 21. 如果我在IE中重複CSS樣式會發生什麼?
- 22. 如果消息在MQ中回滾會發生什麼情況?
- 23. 爲什麼會發生? java
- 24. 如果我們不在Java中序列化對象會發生什麼?
- 25. 如果同步變量在java中被重新分配會發生什麼?
- 26. 在Java中調用某個方法後會發生什麼
- 27. 在Data.Pool中,如果創建新資源的操作引發異常,會發生什麼情況?
- 28. 如果在獲得互斥鎖後發生中斷,會發生什麼情況
- 29. 如果我不在Subversion 1.5中使用--Reintegrate選項,會發生什麼?
- 30. 如果我在JavaScript中使用alert(element),會發生什麼情況?
根據定義,0/0 = NaN。見http://en.wikipedia.org/wiki/NaN。 – 2008-12-12 15:16:03