導航:首頁 > 編程語言 > javasort用法

javasort用法

發布時間:2025-02-16 12:44:53

『壹』 java排序類-Collections.sort()的使用

在處理實體類中屬性具有不同權重時,我們需要對List中的對象進行排序。使用Collections.sort()是實現這一需求的關鍵方法。


為了使排序功能生效,首先調用Collections.sort()。


其次,實體類需要繼承Comparable介面,並重寫其中的兩個方法:toString和compareTo。toString方法用於測試時輸出實體類信息,compareTo方法才是核心,它定義了實體類之間的比較邏輯。


在compareTo方法中,我們需要按照權重進行比較,如年、月、日。從權重最大的屬性開始比較。具體步驟如下:



至此,核心用法便告完成。最後,進行簡單的輸出測試。


通過控制台輸出結果,我們能夠直觀地看到排序的效果。


總結:盡管實現過程可能顯得冗長,但關鍵在於在compareTo方法中正確定義比較規則並返回相應的值。調用Collections.sort()方法時,根據返回值判斷比較結果,從而實現排序功能。無需過多糾結於類的具體角色,只需關注compareTo方法的實現邏輯。

『貳』 java數組sort()方法降序怎麼排

java數組sort()方法降序方式:

用Arrays類螞仔sort()對數組元素進行降序排列

import java.util.Arrays;

class SortDemo

{

public static void main(String[] args)

{

int[] vec={0,15,-14,45,20,70};

Arrays.sort(vec);

System.out.println("/n");

System.out.println("降鉛寬序排列:");

for (int i=vec.length-1;i>=0 ;i-- )

{ 槐物亮

System.out.print(vec[i]+" ");

}

}

}

『叄』 JAVA中如何使用SORT從大到小排.

在排序中,最重要的是歲檔自己實現自己的比較的行數,即是閉槐implements Comparator
實現方法 public int compare(Object o1, Object o2) 最為重要..

舉個例子:
package book.arrayset;

import java.util.Comparator;

/**
* 整數比較器,將整數按降序排列
*/
class MyIntComparator implements Comparator{

/**
* o1比o2大,返回-1;o1比o2小,返回1。
*/
public int compare(Object o1, Object o2) {
int i1 = ((Integer)o1).intValue();
int i2 = ((Integer)o2).intValue();
if (i1 < i2){
return 1;
}
if (i1 > i2){
return -1;
}
return 0;
}
}

//上面的為比較的函數實現,下面真正的添加數據,

//通過調用上面的比較函數實現自定義排序的功能

package book.arrayset;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/**
* 對List中的元素排序
*/
public class SortList {

public static void output(List list){
if (list == null){
return;
}
for (int i=0; i<list.size(); i++){
System.out.print(list.get(i).toString() + " ");
}
System.out.println();
}

public static void main(String[] args) {
List list = new ArrayList();
list.add(new Integer(5));
list.add(new Integer(8));
list.add(new Integer(1));
list.add(new Integer(3));
list.add(new Integer(2));
list.add(new Double(3.1));
System.out.println("list開始狀態");
SortList.output(list);
//Collections.sort方法將用默認轎雀友比較器排列list的元素
Collections.sort(list);
System.out.println("list被默認比較器排序後的狀態");
SortList.output(list);
//下面將list的元素按降序排列
Collections.sort(list, new MyIntComparator());
System.out.println("list被自定義比較器排序後的狀態");
SortList.output(list);

//因此,對於任意自定義類的對象,當保存在集合類容器中後,如果需要對它們進行排序,
//需要自己提供適應於自定義類的比較器,自定義比較器必須實現Comparator介面。
//然後採用Collections.sort(list, comparator);方法對容器進行排序。
}
}

『肆』 java中的SORT怎麼用

Java中的Sort(排序)通常指的是Collections.sort() 對 List 的排序,該排序方式有兩種不同改的使用方法:
第一種是list中的對象實現Comparable介面,如下
public class User implements Comparable<User>{
private String name;
private Integer order;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getOrder() {
return order;
}
public void setOrder(Integer order) {
this.order = order;
}
public int compareTo(User arg0) {
return this.getOrder().compareTo(arg0.getOrder());
}
}
此時可以直接排序
public static void main(String[] args) {
User user1 = new User();
user1.setName("a");
user1.setOrder(1);
User user2 = new User();
user2.setName("b");
user2.setOrder(2);
List<User> list = new ArrayList<User>();
//此處add user2再add user1
list.add(user2);
list.add(user1);
Collections.sort(list);
for(User u : list){
System.out.println(u.getName());
}
}
第二種方法是根據Collections.sort重載方法來實現,例如:
public static void main(String[] args) {
User user1 = new User();
user1.setName("a");
user1.setOrder(1);
User user2 = new User();
user2.setName("b");
user2.setOrder(2);
List<User> list = new ArrayList<User>();
list.add(user2);
list.add(user1);

Collections.sort(list,new Comparator<User>(){
public int compare(User arg0, User arg1) {
return arg0.getOrder().compareTo(arg1.getOrder());
}
});
for(User u : list){
System.out.println(u.getName());
}
}

閱讀全文

與javasort用法相關的資料

熱點內容
不會數學英語如何編程 瀏覽:88
如何能知道網站伺服器地址 瀏覽:648
程序員月薪5萬難嗎 瀏覽:138
如何評價程序員 瀏覽:802
雲虛機和伺服器的區別 瀏覽:403
廣西柳州壓縮機廠 瀏覽:639
arm開發編譯器 瀏覽:833
51單片機的核心 瀏覽:746
看電視直播是哪個app 瀏覽:958
將c源程序編譯成目標文件 瀏覽:787
再要你命3000pdf 瀏覽:558
ai軟體解壓軟體怎麼解壓 瀏覽:520
文件夾怎樣設置序列號 瀏覽:963
javascriptgzip壓縮 瀏覽:248
易語言怎麼取出文件夾 瀏覽:819
蘋果xs手機加密app哪裡設置 瀏覽:605
超聲霧化器與壓縮霧化器 瀏覽:643
模擬實現進程調度演算法 瀏覽:388
現在的壓縮包都是加密 瀏覽:331
施工員找工作去哪個app 瀏覽:632