真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java中System.out.println(1.0/0)會輸出什么

這篇文章主要介紹了java中System.out.println(1.0/0)會輸出什么,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創(chuàng)新互聯(lián)建站是專業(yè)的紅河哈尼網(wǎng)站建設(shè)公司,紅河哈尼接單;提供成都做網(wǎng)站、網(wǎng)站設(shè)計,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行紅河哈尼網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

先讓我們來試一試    
package erdan.demo;public class TestDouble {    public static void main(String[] args) {         System.out.println(1.0 / 0);    }}

你認(rèn)為的我認(rèn)為的它應(yīng)該會拋出  ArithmeticException 異常

但是它現(xiàn)在輸出了 Infinity

java中System.out.println(1.0/0)會輸出什么

為什么呢?


Double 數(shù)據(jù)類型支持無窮大
還有其他類型支持嗎?
有,還有 Float
下面我們來查看    Double 源碼  ,可以看到
/**   * 一個常數(shù),保持類型的正無窮大  */public static final double POSITIVE_INFINITY = 1.0 / 0.0;/** * 一個常數(shù),保持類型的負(fù)無窮大 */public static final double NEGATIVE_INFINITY = -1.0 / 0.0;/**   * 一個常數(shù),非數(shù)值類型 */public static final double NaN = 0.0d / 0.0;

下面來試驗下   0.0/0   與    -1.0/0

Double 正無窮 = 1.0 / 0;Double 負(fù)無窮 = -1.0 / 0;
System.out.println("正無窮:" + 正無窮);System.out.println("負(fù)無窮:" + 負(fù)無窮);Double 非數(shù)值 = 0.0 / 0;System.out.println("非數(shù)值 0.0/0 ->" + 非數(shù)值);
輸出:  
     
   
   
   正無窮:Infinity  
    
    負(fù)無窮:-Infinity  
    
    非數(shù)值 0.0/0 ->NaN

對無窮大進行運算  
下面來測試對Float類型與Doubloe類型無窮大進行運算
public static void testFloatInfinity() {     Float infFloat = Float.POSITIVE_INFINITY;          Double infDouble = Double.POSITIVE_INFINITY;          System.out.println("infFloat + 5 = " + (infFloat + 5));          System.out.println("infFloat - infDouble = " + (infFloat - infDouble));          System.out.println("infFloat * -1 = " + (infFloat * -1));}
輸出:  
infFloat + 5 = InfinityinfFloat - infDouble = NaNinfFloat * -1 = -Infinity
可以注意到1,3行運算符合我們的預(yù)計結(jié)果

ps: Infinity- Infinity 的結(jié)果不是數(shù)字類型

對這些值進行判斷  

public static void checkFloatInfinity() {    Double 正無窮 = 1.0 / 0;     Double 負(fù)無窮 = -1.0 / 0;     Double 非數(shù)值 = 0.0 / 0;     System.out.println("判斷正無窮: " + Double.isInfinite(正無窮));     System.out.println("判斷負(fù)無窮: " + (Double.NEGATIVE_INFINITY == 負(fù)無窮));     System.out.println("判斷非數(shù)值(==): " + (Double.NaN == 非數(shù)值));     System.out.println("判斷非數(shù)值(isNaN):  " + Double.isNaN(非數(shù)值));}
輸出:
     
   
   
   判斷正無窮: true  
    
    判斷負(fù)無窮: true  
    
    判斷非數(shù)值(==): false  
    
    判斷非數(shù)值(isNaN):  true

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“java中System.out.println(1.0/0)會輸出什么”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!


當(dāng)前名稱:java中System.out.println(1.0/0)會輸出什么
地址分享:http://weahome.cn/article/ihccoi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部