第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

求助關(guān)于在java中Collections問題,麻煩大佬幫忙看看~

求助關(guān)于在java中Collections問題,麻煩大佬幫忙看看~

翻過高山走不出你 2021-11-25 21:15:51
用Collections的sort方法排序一個(gè)類的多個(gè)對象這個(gè)類一定要實(shí)現(xiàn)Comparable接口吧?寫好CompareTo方法后,再主函數(shù)里調(diào)用Collections.sort()才能實(shí)現(xiàn)排序但是在jdk 的 src.zip 中java.util.Collections的源代碼中不帶比較器的sort方法代碼是:public static <T extends Comparable<? super T>> void sort(List<T> list) {Object[] a = list.toArray();Arrays.sort(a);ListIterator<T> i = list.listIterator();for (int j=0; j<a.length; j++) {i.next();i.set((T)a[j]);}}代碼的意思是將列表轉(zhuǎn)化為數(shù)組,對數(shù)組進(jìn)行排序,再將數(shù)組元素逐一儲存到列表里,是這樣吧?里面并沒涉及Comparable接口的compareTo方法,那么它是如何知道我的排序方式的呢 ?
查看完整描述

1 回答

?
慕后森

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超5個(gè)贊

我給你看個(gè)例子你就知道了
這里有一個(gè)Person類,里面有firstName and surename2個(gè)成員。你的類要實(shí)現(xiàn)那個(gè)Comparable接口。然后在compareTo函數(shù)里決定如果排序,在這個(gè)例子里是按照surename排序,surename相同的就按照firstName排序的。
希望這個(gè)例子對你了解自定義的排序有幫助。

import java.util.Arrays;

class Person implements Comparable<Person> {
public Person(String firstName, String surname) {
this.firstName = firstName;
this.surname = surname;
}
public String toString() {
return firstName + " " + surname;
}
public int compareTo(Person person) {
int result = surname.compareTo(person.surname);
return result == 0 ? firstName.compareTo(((Person) person).firstName) : result;
}
private String firstName;
private String surname;
}

public class MainClass {
public static void main(String[] args) {
Person[] authors = { new Person("A", "B"),
new Person("C", "D"),
new Person("E", "F"),
new Person("Z", "Y"),
new Person("X", "T"),
new Person("O", "R") };
Arrays.sort(authors);
System.out.println("\nThe cast is ascending sequence is:\n");
for (Person person : authors) {
System.out.println(person);
}
}
}

對于你提到的那個(gè)問題,你可以去看卡你 Arrays.sort(a)的代碼。



查看完整回答
反對 回復(fù) 2021-11-28
  • 1 回答
  • 0 關(guān)注
  • 307 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號