日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSComparable

Comparable

創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),日土企業(yè)網(wǎng)站建設(shè),日土品牌網(wǎng)站建設(shè),網(wǎng)站定制,日土網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,日土網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專(zhuān)業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

public interface Comparable

該接口對(duì)實(shí)現(xiàn)它的每個(gè)類(lèi)的對(duì)象進(jìn)行了總排序。這種排序稱為類(lèi)的自然排序,類(lèi)的 compareTo 方法稱為其自然比較方法。

實(shí)現(xiàn)此接口的對(duì)象列表(和數(shù)組)可以通過(guò) Collections#sort(List)(和 [Arrays#sort(Object]))自動(dòng)排序。實(shí)現(xiàn)此接口的對(duì)象可以用作 SortedMap 中的鍵或用作 SortedSet 中的元素,而無(wú)需指定 Comparator。

當(dāng)且僅當(dāng) e1.compareTo(e2) == 0 對(duì)于類(lèi) C 的每個(gè) e1 和 e2 具有與 e1.equals(e2) 相同的布爾值時(shí),類(lèi) C 的自然排序被稱為與 equals 一致。注意null 不是任何類(lèi)的實(shí)例,即使 e.equals(null) 返回 false,e.compareTo(null) 也應(yīng)該拋出 NullPointerException。

強(qiáng)烈建議(盡管不是必需的)自然排序與 equals 一致。之所以如此,是因?yàn)闆](méi)有顯式比較器的排序集(和排序映射)在與自然順序與等于不一致的元素(或鍵)一起使用時(shí)表現(xiàn)“奇怪”。特別是,這樣的排序集合(或排序映射)違反了集合(或映射)的一般合同,該合同是根據(jù) equals 方法定義的。

例如,如果添加兩個(gè)鍵 a 和 b 使得 (!a.equals(b) && a.compareTo(b) == 0) 到不使用顯式比較器的排序集,則第二個(gè)添加操作返回 false (并且排序集的大小不會(huì)增加)因?yàn)閺呐判蚣慕嵌葋?lái)看 a 和 b 是等價(jià)的。

幾乎所有實(shí)現(xiàn) Comparable 的 Java 核心類(lèi)都具有與 equals 一致的自然順序。一個(gè)例外是 java.math.BigDecimal,它的自然排序等同于具有相同值和不同精度的 BigDecimal 對(duì)象(例如 4.0 和 4.00)。

對(duì)于數(shù)學(xué)傾向,定義給定類(lèi) C 的自然排序的關(guān)系是:

       {(x, y) such that x.compareTo(y) <= 0}. 

這個(gè)總訂單的商是:

       {(x, y) such that x.compareTo(y) == 0}. 

從 compareTo 的約定可以直接得出,商是 C 上的等價(jià)關(guān)系,自然排序是 C 上的全序。當(dāng)我們說(shuō)類(lèi)的自然排序與 equals 一致時(shí),我們的意思是 自然排序是類(lèi)的 Object#equals(Object) 方法定義的等價(jià)關(guān)系:

     {(x, y) such that x.equals(y)}. 

此接口是 Java 集合框架的成員。

方法總結(jié)

修飾符和類(lèi)型 方法 描述
int compareTo(T o) 將此對(duì)象與指定對(duì)象進(jìn)行比較以進(jìn)行排序。

方法詳情

compareTo

int compareTo(T o)

將此對(duì)象與指定對(duì)象進(jìn)行比較以進(jìn)行排序。返回負(fù)整數(shù)、零或正整數(shù),因?yàn)榇藢?duì)象小于、等于或大于指定對(duì)象。

實(shí)現(xiàn)者必須確保所有 x 和 y 的 sgn(x.compareTo(y)) == -sgn(y.compareTo(x))。 (這意味著如果 y.compareTo(x) 拋出異常,則 x.compareTo(y) 必須拋出異常。)

實(shí)現(xiàn)者還必須確保關(guān)系是可傳遞的:(x.compareTo(y)>0 && y.compareTo(z)>0) 意味著 x.compareTo(z)>0。

最后,實(shí)現(xiàn)者必須確保 x.compareTo(y)==0 意味著 sgn(x.compareTo(z)) == sgn(y.compareTo(z)),對(duì)于所有 z。

強(qiáng)烈建議但不嚴(yán)格要求 (x.compareTo(y)==0) == (x.equals(y))。一般來(lái)說(shuō),任何實(shí)現(xiàn)了 Comparable 接口并違反此條件的類(lèi)都應(yīng)該清楚地表明這一事實(shí)。推薦的語(yǔ)言是“注意:這個(gè)類(lèi)有一個(gè)與equals不一致的自然順序。”

在前面的描述中,符號(hào)sgn(expression)表示數(shù)學(xué)符號(hào)函數(shù),它被定義為根據(jù)表達(dá)式的值是負(fù)數(shù)、零還是正數(shù)返回-1、0或1之一。

參數(shù):

參數(shù)名稱 參數(shù)描述
o the object to be compared.

返回:

負(fù)整數(shù)、零或正整數(shù),因?yàn)榇藢?duì)象小于、等于或大于指定對(duì)象。

Throws:

Throw名稱 Throw描述
NullPointerException 如果指定的對(duì)象為空
ClassCastException 如果指定對(duì)象的類(lèi)型阻止它與此對(duì)象進(jìn)行比較。

名稱欄目:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSComparable
文章分享:http://www.dlmjj.cn/article/djcihjd.html