大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 常見問題 如何使用Java Core提供的兩個“比較” API?

如何使用Java Core提供的兩個“比較” API?

更新時間:2019-09-04 10:14:11 來源:動力節點 瀏覽1916次

  Comparable和Comparator是JavaCoreAPI提供的兩個接口。從它們的名字,我們可以告訴他們可能用于以某種方式比較東西。但究竟是什么,它們之間有什么區別?以下是回答此問題的兩個示例。這些簡單的例子比較了兩個HDTV的尺寸。閱讀代碼后,如何使用ComparablevsComparator是顯而易見的。

  1.Comparable

  Comparable由類實現,以便能夠將自身的對象與其他一些對象進行比較。類本身必須實現接口才能比較其實例。實現所需的方法是compareTo。這是一個例子:

image.png

  輸出:索尼更好。

  2.Comparator

  在某些情況下,你可能不希望更改類并使其具有可比性。在這種情況下,Comparator如果要基于某些屬性/字段比較對象,則可以使用。例如,可以根據“高度”或“年齡”等對2個人進行比較(使用可比較的方法無法做到這一點。)

  實現所需的方法是compare。現在讓我們用另一種方法來比較這些電視的大小。一種常見的用途Comparator是分類。bothCollections和Arraysclasses都提供了一個使用a的排序方法Comparator。

image.png

  輸出:

  松下三星索尼

  通常我們可以使用Collections.reverseOrder方法來獲得降序比較。如下:

image.png

  輸出:

  [3,1,2][1,2,3][3,2,1]

  3.何時使用哪個接口?

  簡而言之,實現Comparable的類將具有可比性,這意味著它可以相互比較實例。

  實現Comparator的類將主要用于兩種情況:1)它可以傳遞給排序方法,例如Collections.sort或Arrays.sort,以允許精確控制排序順序和2)它還可以用于控制某些數據的順序結構,例如有序集(例如TreeSet)或有序映射(例如TreeMap)。

  例如,創建一個TreeSet。我們可以將構造函數傳遞給比較器,也可以使對象類具有可比性。

  方法1-TreeSet

image.png

  方法2-Comparable

image.png

  這篇文章到這里就結束了,大家對本次知識點是否理解了呢?如果有疑問可以登錄“動力節點IT培訓官網”咨詢在線客服老師哦。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 亚洲片在线 | 国产va| 四虎在线免费视频 | 伊人色综合久久天天爱 | 高清成人 | 五月色综合 | 狠狠操狠狠操狠狠操 | 黑人边吃奶边扎下面激情视频 | 欧美激情免费观看 | 自拍 欧美 在线 综合 另类 | 色综合综合色综合色综合 | 国产精品美女流白浆视频 | 亚洲国产成人久久一区二区三区 | 97se色综合一区二区二区 | 97成人在线视频 | 欧美日韩在线观看免费 | 亚洲成网站www久久九 | 天天色天天射天天干 | 九九视频免费看 | 四虎最新免费观看网址 | 99国产精品国产精品 | 大毛片a大毛片 | 天天久久狠狠伊人第一麻豆 | 日本黄色aa| 超清乱人伦中文视频在线 | 久久久久琪琪免费影院 | 国产h片在线观看 | 香蕉97超级碰碰碰碰碰久 | 99国产视频| 免费一级特黄欧美大片久久网 | 欧洲成人免费高清视频 | 日韩精品综合 | 国产中文字幕免费 | 久久午夜宅男免费网站 | 亚洲水蜜桃久久综合网站 | 日韩精品一区二区三区在线观看l | 不卡日本| 欧美理论片在线观看 | 高清黄色直接看 | 伊人成影院九九 | 福利视频专区 |