Heim > Java > javaLernprogramm > Sortierung der Sammlung (Objekt).

Sortierung der Sammlung (Objekt).

巴扎黑
Freigeben: 2016-12-10 09:22:00
Original
1747 Leute haben es durchsucht

Es gibt zwei Möglichkeiten, die Liste mithilfe der Collections.sort-Methode zu sortieren.
Die erste besteht darin, dass die Objekte in der Liste die Comparable-Schnittstelle wie folgt implementieren:
[java] view plain copy
/ **
* Benutzer nach Reihenfolge sortieren
*/
public class User implementiert Comparable{
private String name;
public String getName() {
return name; > } }
public void setName(String name) {
this.name = name;
}
public Integer getOrder() {
return order; Integer order ) {
this.order = order;
} public int CompareTo(User arg0) {
return this.getOrder().compareTo(arg0.getOrder()); >} Testen Sie es:
public class Test{

public static void main(String[] args) {
User user1 = new User();
user1.setName("a" );
user1.setOrder(1);
User user2 = new User();
user2.setOrder(2);
List < ; User> list = new ArrayList(); //Hier user1 hinzufügen
list.add(user1); sort (list);
for(User u : list){
System.out.println(u.getName()); 🎜>
Das Ausgabeergebnis ist wie folgt
a
b
Die zweite Methode basiert auf der Überladungsmethode Collections.sort, zum Beispiel:
[java] view plain copy
/* *
* Benutzer nach Reihenfolge sortieren
*/
public class User { //Die Comparable-Schnittstelle muss hier nicht implementiert werden.
private String name;
public String getName() {
return name; (String name) {
this.name = name;
}
public Integer getOrder() {
return order; }
public void setOrder(Integer order) {
this. order = order;
}
}

Schreiben Sie dies einfach in die Hauptklasse (HastSet——>List——>sort Sorting):
public class Test {
public static void main(String[] args) {
User user1 = new User();
user1.setName("a");
User user2 = neuer Benutzer();
user2.setName("b");
user2.setPrice(2);
Set();
Hset.add(user1);
List ArrayList(); list.addAll(Hset);


Collections.sort(list,new Comparator(){
public int Compare(User arg0 , User arg1) {
             return arg0.getPrice().compareTo(arg1.getPrice());                                                          out .println(u.getName());                                                 .println(u.getName()); return arg0.getOrder().compareTo(arg1.getOrder()); Änderung zu:
return arg1.getOrder().compareTo(arg0.getOrder());

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage