【Java基礎篇】集合排序

所謂集合排序是指對集合內的元素進行排序。

集合工具類Collections中提供了兩種排序算法,分別是:

  1. Collections.sort(List list)
  2. Collections.sort(List list,Comparator c)

Collections.sort(List list)這種方式需要對象實現Comparable接口,并重寫compareTo()方法。

import java.util.Collections;
import java.util.LinkedList;public class Student implements Comparable<Student>{private int id;private String name;public Student(int id, String name) {super();this.id = id;this.name = name;}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}@Overridepublic String toString() {return "Student [id=" + id + ", name=" + name + "]";}@Overridepublic int compareTo(Student stu) {return stu.id-this.id;//實現id倒序}public static void main(String[] args) {Student stu = new Student(2,"張三");Student stu2 = new Student(1,"李四");Student stu3 = new Student(5,"王五");LinkedList<Student> list = new LinkedList<Student>();list.add(stu);list.add(stu2);list.add(stu3);Collections.sort(list);for(Student student:list){System.out.println(student);}}
}

Collections.sort(List list,Comparator c)這種方式比較靈活,只需要提供比較器實例就可以了。

import java.util.Collections;
import java.util.Comparator;
import java.util.LinkedList;public class Student{private int id;private String name;public Student(int id, String name) {super();this.id = id;this.name = name;}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}@Overridepublic String toString() {return "Student [id=" + id + ", name=" + name + "]";}public static void main(String[] args) {Student stu = new Student(2,"張三");Student stu2 = new Student(1,"李四");Student stu3 = new Student(5,"王五");LinkedList<Student> list = new LinkedList<Student>();list.add(stu);list.add(stu2);list.add(stu3);Collections.sort(list,new Comparator<Student>() {@Overridepublic int compare(Student o1, Student o2) {return o2.getId()-o1.getId();}});for(Student student:list){System.out.println(student);}}
}

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/530366.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/530366.shtml
英文地址,請注明出處:http://en.pswp.cn/news/530366.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

語言nomogram校準曲線圖_預測模型的概率校準

1.背景 機器學習分為:監督學習,無監督學習,半監督學習(也可以用hinton所說的強化學習)等。在這里,先簡要介紹一下監督學習從給定的訓練數據集中學習出一個函數(模型參數),當新的數據到來時,可以根據這個函數預測結果。監督學習的訓練集要求包括輸入輸出,也可以說是特征和…

eclipse debug 工程源碼時出現source not found問題解決

問題描述&#xff1a;使用eclipse debug啟動應用&#xff0c;并且打斷點在工程的源碼上面&#xff0c;提示source not found。 問題解決&#xff1a; 1、選中工程&#xff0c;右鍵Debug As》Debug Configurations 2、在Java Application下面選中需要debug的程序&#xff0c;然…

代碼中有個get是啥意思_是時候秀一波了,甩掉get和set,Lombok讓代碼更簡潔

前言前幾天有個新來的同事(實習生)驚訝的對我說&#xff1a;我們的代碼里好多錯誤&#xff0c;我的程序本地都啟動不了。我一臉懵逼的質問他&#xff1a;目前線上的代碼&#xff0c;怎么會有問題嗎&#xff1f;他不服氣的說&#xff1a;你來看嘛&#xff0c;就是有問題&#xf…

JavaWeb工程師知識圖譜

一個工作快三年的的Java菜鳥&#xff0c;總結梳理了一下JavaWeb工程師必須掌握的一些知識點&#xff08;持續更新中。。。&#xff09;。 預覽效果 xmind原始文件 百度云盤 鏈接&#xff1a;https://pan.baidu.com/s/1hp3MWGOX2I8APw75Suu52Q 提取碼&#xff1a;j6w6

【Java中級篇】基于jxl讀寫Excel文件遇到的問題

發生異常&#xff0c;并且提示&#xff1a;unable to recognize ole stream 遇到這個問題需要將Excel文件另存為Excel 97-2003&#xff08;*.xls&#xff09;

松下a6伺服x4接線圖_2021中山東鳳松下溫控器回收價高同行

2021中山東鳳松下溫控器回收價高同行西門子TDC&#xff0c;西門子存儲卡,西門子變頻器等全線西門子自動化產品。小汪 滿意的價格&#xff0c;快的付款速度&#xff0c;熱誠歡迎全國各地朋友洽談合作。具體回收業務&#xff1a;SIEMENS可編程控制器 1、SIMATIC&#xff0c;S7系列…

eclipse啟動發生Failed to load JNI shared library

今天啟動eclipse發生下面的情況 從網上知道是eclipse和jdk位數不一致導致的。 輸入java -version ,查看JDK是多少位&#xff0c;顯示64位的就是64位JDK&#xff0c;未顯示的為32位的JDK。 eclipse的安裝目錄下有一個叫eclipse.ini的配置文件&#xff0c;打開后能看到 x86_64說…

imx226_相機選型器

-- 全部 --AR1820HS (8)CMV2000-2E5C1PP (2)CMV2000-3E12M1PP (2)CMV2000-3E5M1PP (2)CMV4000-3E12M1PP (1)CMV4000-3E5C1PP (5)CMV4000-3E5M1PP (5)EV76C560ABT (25)EV76C560ACT (25)EV76C570ABT (23)EV76C570ACT (23)EV76C661ABT (20)IMX174LLJ-C (8)IMX174LQJ-C (8)IMX178LL…

算法的時間復雜度和空間復雜度的原理

一、算法分析 如何判斷一個算法的好壞呢&#xff1f;首先算法必須要正確&#xff0c;這是最基本的要求。其次&#xff1a; 算法花費的時間算法占用的空間小&#xff08;輔助存儲空間&#xff09;算法要容易調試&#xff0c;測試&#xff0c;理解&#xff0c;編碼&#xff0c;…

5條件篩選功能_一分鐘,徹底學會Excel高級篩選,坐等升職加薪!

Excel中高級篩選是普通篩選的加強&#xff0c;能夠實現更加復雜的篩選功能。請您看下面的示例圖&#xff1a;數據示例圖如果要求篩選出班級為2班且語文成績大于100分的數據&#xff0c;那么使用普通篩選連續篩選兩次就可以得到結果。請您看下面的操作演示&#xff1a;普通篩選操…

數據結構之樹【完善中】

一、樹的概念 樹是一種分組的層次結構。 樹的定義&#xff1a; 樹是n(n>0)個數據元素的集合,在任意一棵非空樹中&#xff0c;有如下特征 有且只有一個根結點&#xff08;無前驅結點&#xff09;當n>1時&#xff0c;其他結點被分為若干個互不相交集合&#xff0c;并且…

phpgif圖片包_PHP生成GIF動態圖片驗證碼

1 <?php2 /**3 * 調用示例4 **/5 session_start();6 $randCode ;7 //驗證碼隨機8 $str"abcdefghjkmnpqrstuvwsyzABCDEFGHJKMNPQRSTUVWSYZ23456789";9 for($i0;$i<4;$i){10 $safe.substr($str,rand(0,strlen($str)),1);11 }12 $_SESSION["imgcode"]…

工程圖標注粗糙度_Inventor教程之工程圖標注實例

1工程圖標注實例對以下實體零件進行全部的標注演示。操作步驟如下&#xff1a;(1)打開文件。運行Inventor&#xff0c;單擊“快速入門”選項卡“啟動”面板上的“打開”按鈕&#xff0c;在“打開”對話框中選擇“實體零件”&#xff0c;單擊“打開”按鈕進入實體零件。(2)新建工…

Oracle數據庫 invalid character問題解決

今天使用PL/SQL Developer這個工具來操作Oracle數據時發現了一個問題&#xff1a; select * from tb_student_grade pivot(max(grade) for course in(math as 數學,chinese as 語文,english as 英語)); 執行這個SQL語句提示invalid character,原因是我的數據庫編碼是AMERICAN…

定時線程_SpringBoot定時任務,@Async多線程異步執行

一、使用SpringBoot實現定時任務這個不是重點&#xff0c;就簡單的實現一下&#xff0c;至于cron表達式怎么寫也不是重點&#xff0c;自行百度即可。1-1、基于 Scheduled 注解的方式import org.springframework.scheduling.annotation.EnableScheduling;import org.springframe…

SpringBoot入門一

SpringBoot能夠很簡單的創建一個直接運行的單體Spring應用 特性&#xff1a; 單體Spring應用內置的tomcat、Jetty提供默認的starter來構建配置自動配置Spring和第三方庫 推薦一個很好的學習教程&#xff0c;https://blog.csdn.net/u010486495/article/details/79348302 1 構…

mysql怎么把datetime類型轉換_mysql怎樣實現time轉datetime

mysql實現time轉datetime的方法&#xff1a;使用在sql語句中【FROM_UNIXTIME(時間值)】&#xff0c;代碼為【insert into test(time) values(FROM_UNIXTIME(%d))",time(NULL)】。mysql實現time轉datetime的方法&#xff1a;FROM_UNIXTIME(time(NULL))將liunx系統的time_t類…

SpringBoot入門二

參考Spring Boot Starters - 御坂研究所 創建自己的starter starter是依賴的一種synthesize&#xff08;合成&#xff09;。 starter會把需要用到的依賴全部包含進來&#xff0c;避免開發者自己手動引入依賴。 starter的邏輯 pom.xml<parent><groupId>org.spri…

Tomcat入門

一&#xff0c;tomcat啟動 雙擊startup.bat,如果出現一閃而過的情況&#xff0c;在文件的末尾添加pause&#xff0c;就可以看到環境變量設置的路徑是否正確 如果無法在電腦的高級系統設置中設置環境變量&#xff0c;可以在setclasspath.bat中設置環境變量 set JAVA_HOMEC:\P…

php mysql 圖像_將圖像插入MySQL并使用PHP檢索圖像

此文可能比較繁瑣&#xff0c;有更好的方法&#xff0c;但是出于教程目的&#xff0c;這是我的"“最佳實踐”的路線。今天&#xff0c;我們將討論一個似乎每個人都有些困惑的話題……在MySQL中存儲BLOB圖像&#xff0c;然后使用PHP再次顯示它們。盡管始終建議不要這樣做&a…