日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java中NaN和-0.0f的比较问题

發布時間:2025/4/9 java 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java中NaN和-0.0f的比较问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

簡單的說,比較兩個int型或long型的數據沒有什么問題,可以用==來判斷,但對浮點數(float與double)來說,需要對Float.NaN和0.0這個兩個特殊數字作額外的處理。
Float.NaN嚴格說來不是一個數字(它的字面意思也就是Not a Number),但是因為這個值可以被保存在一個float型的變量中(因為它常常是除0的結果),所以暫且當它是個數字吧。但它與一般的浮點數有些許不同,就是兩個NaN用==比較的結果會得到false。
可以用下面的代碼驗證:

float?nan=Float.NaN;
float?anotherNan=Float.NaN;
System.out.println(nan
==anotherNan);


輸出結果為false

我用另一種除0的方法得到NaN,可以看到使用==判斷仍然得到false。代碼如下:

float?overFlow=0.0f/0.0f;
System.out.println(overFlow);
System.out.println(nan
==overFlow);



而當我們使用Float.compare()這個方法來比較兩個NaN時,卻會得到相等的結果。可以用下面的代碼驗證:

System.out.println(Float.compare(nan,anotherNan));
System.out.println(Float.compare(nan,overFlow));


compare()方法如果返回0,就說明兩個數相等,返回-1,就說明第一個比第二個小,返回1則正好相反。
上面這兩行語句的返回結果都是0。
一般來說,基本類型的compare()方法與直接使用==的效果“應該”是一樣的,但在NaN這個問題上不一致,是利是弊,取決于使用的人作何期望。當程序的語義要求兩個NaN不應該被認為相等時(例如用NaN來代表兩個無窮大,學過高等數學的朋友們都記得,兩個無窮看上去符號是一樣,但不應該認為是相等的兩樣東西),就使用==判斷;如果NaN被看得無足輕重(畢竟,我只關心數字,兩個不是數字的東西就劃歸同一類好了嘛)就使用Float.compare()。

另一個在==和compare()方法上表現不一致的浮點數就是正0和負0(當然這也是計算機表示有符號數字的老大難問題),我們(萬能的)人類當然知道0.0f和-0.0f應該是相等的數字,但是試試下面的代碼:

float?negZero=-0.0f;
float?zero=0.0f;
System.out.println(zero
==negZero);
System.out.println(Float.compare(zero,negZero));


返回的結果是true和-1。看到了么,==認為正0和負0相等,而compare()方法認為正0比負0要大。所以對0的比較來說,==是更好的選擇。

轉載于:https://www.cnblogs.com/Free-Thinker/p/3656264.html

總結

以上是生活随笔為你收集整理的Java中NaN和-0.0f的比较问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 成年人网站免费看 | 夜夜伊人 | 老女人人体欣赏a√s | 荫蒂被男人添免费视频 | 成年男女免费视频网站 | 日韩三级观看 | 国产欧美精品一区 | 国产精品久久久一区 | 欧美视频一区 | 性欧美videos另类hd | 欧美a级免费| 国产69精品久久久久久久 | 国产原创在线观看 | 黄色网络在线观看 | 欧美第九页 | 精品一二三四 | 丝袜美女啪啪 | 97视频国产 | 国产一二三精品 | 欧美一区二区在线观看 | 农村偷人一级超爽毛片 | 成人在线视频在线观看 | 国产精品久久不卡 | 欧美激情成人 | wwwxxx日韩| 小色哥网站 | 国产伊人自拍 | 重囗味sm一区二区三区 | 亚洲激情成人 | 色爱亚洲| 妺妺窝人体色www婷婷 | 狠狠入| 大象传媒成人在线观看 | 中文字幕久久网 | 成人丁香婷婷 | 香蕉在线视频观看 | 日韩精品久久一区 | 黑人一级 | 成人免费观看a | 超碰在线最新地址 | 热99这里只有精品 | 99re6在线精品视频免费播放 | 91成人破解版 | 亚洲一区国产精品 | 狠狠干狠狠干狠狠干 | 亚洲图片在线视频 | 欧美三级韩国三级日本三斤 | 久色视频在线播放 | 99热免费在线观看 | 国产精品久久..4399 | 韩国黄色片网站 | 青娱乐精品视频 | 波多野结衣片子 | 中文字幕 欧美 日韩 | 男女草比视频 | 午夜三级视频 | 少妇一级淫片日本 | 日韩高清在线一区 | 天天操天天看 | 国产在线午夜 | 欧美亚洲综合另类 | 一级国产片 | 欧美日韩精品在线播放 | 婷婷中文字幕在线 | 韩国三级hd中文字幕叫床浴室 | 久久亚洲av成人无码国产电影 | 亚洲精品午夜国产va久久成人 | 97成人在线观看 | 一本久久精品一区二区 | 亚洲av无码一区二区乱子伦 | 国产网站入口 | 久久综合久久综合久久综合 | 成人在线观看www | 色综合天| 欧美色插 | 久久久久久精 | 精品无码av一区二区三区不卡 | 97精品视频在线观看 | 亚洲一区久久久 | 黄色网在线播放 | 日韩在线欧美 | 美女精品 | 日日嗨av一区二区三区四区 | 欧美日日夜夜 | 欧美日韩激情在线一区二区三区 | 国产精品黄网站 | 捆绑凌虐一区二区三区 | 不卡的在线视频 | 午夜一区二区三区免费 | 青青草伊人 | 一区二区三区啪啪啪 | 国产在线中文 | 美国式禁忌1980 | 午夜一区在线 | 少妇一级淫片免费观看 | 亚洲少妇网 | 亚洲国产精品久久久久爰性色 | 手机看片福利久久 | 中文字幕精品一区二区精品 |