筆記是看黑馬視頻一邊做的,主要是用於自己複習用。
https://blog.csdn.net/HDZ1821/article/details/104577474 詳細請了解這篇文章。
目錄
對自定義類進行sort(Comparable接口的compareTo()):
Collections集合工具類:用來對集合進行操作
對自定義類進行排序的個人思考:
最後一個Comparable接口中compareTo()方法,適用於自定義類進行排序,需要進行覆蓋重寫,對其進行實現。
所以說自定義的類如果需要去重寫這麼一個方法,那麼就需要去繼承這個接口。public Class 自己的類 implements Comparable<自己的類>{ } 然後再對方法進行重寫。
舉個例子吧,就比如說,底層的Srting代碼就是對compareTo進行了覆蓋重寫的。this.getAge()-參數.getAge();年齡升序,參數.getAge-this.getAge()年齡降序。
引申:需要進行覆蓋重寫的例子有很多很多,每一次的對其的覆蓋重寫,都是爲了自身的需求進行考慮的,比如說toString的覆蓋重寫,就是爲了輸出我們自身想要的數據,再比如hashCode和equals的重寫,就是爲了讓我們自定義的類,不包含有重複數據而存在的。
而這些設計,都非常的人性化。
常用方法詳解:
Comparator也需要重寫compare方法。(參數列表:前減後升,後減前降)
對自定義類進行sort(Comparable接口的compareTo()):
最後那一行寫錯了,應該是年齡降序規則。
例子:
Comparator:Comparator也需要重寫compare方法。(參數列表:前減後升,後減前降)
整數類型的集合:
自定義類類型的集合: