ArrayListe sortieren anhand zweier Parameter

Otz

Bekanntes Mitglied
Hallo zusammen,

ich habe eine Array Liste mit Objekten, die ich nach gewissen Attributen sortieren möchten. Zum einen nach dem vorkommen und falls dieses glecih ist, alphabetisch nach dem Namen.

mein bisheriger lösungsansatz:

Code:
Collections.sort(valueList, new Comparator(){
	public int compare(Object arg0, Object arg1) {
	     if(((Value) arg0).getAnzahl() > ((Value) arg1).getAnzahl()){
		return -1;
	     } else if(((Value) arg0).getAnzahl() < ((Value) arg1).getAnzahl()){
		return 1;
	     } else {
		return ((Value)arg0).getName().compareTo(((Value)arg1).getName());
	     }
	}
});

aber leider funktioniert das rein garnicht. ohne den else pfad funktioniert meine sortierung anhand der anzahl.

vielen dank
 

turtle

Top Contributor
Java:
		Collections.sort(valueList, new Comparator() {
			@Override
			public int compare(Object arg0, Object arg1) {
				if ((arg0 instanceof Value) && (arg1 instanceof Value)) {
					Value value0 = (Value) arg0;
					Value value1 = (Value) arg1;
					int anzahlCompare = value0.getAnzahl().compareTo(
							value1.getAnzahl());
					int nameCompare = value0.getName().compareTo(
							value1.getName());
					if (anzahlCompare > 0)
						return anzahlCompare;
					if (anzahlCompare < 0)
						return anzahlCompare;
					return nameCompare;
				}
				return 0;
			}
		});
 

Otz

Bekanntes Mitglied
hmm sieht gut aus... jedoch bringt er bei mir einen fehler bei der zeile

Code:
int anzahlCompare = value0.getAnzahl().compareTo(value1.getAnzahl());


hier scheint das problem zu sein, dass getAnzahl einen int wert zurückliefert
 

X5-599

Top Contributor
Der erste Code funktioniert auch. Gerade getestet. Natürlich davon ausgegangen das nur Value Objekte in der Liste sind.

Java:
public static void main(String[] args)
	{
		List<Value> values = new ArrayList<Value>();
		values.add(new Value(5, "Aaron"));
		values.add(new Value(15, "Abron"));
		values.add(new Value(1, "Earon"));
		values.add(new Value(3, "Baaron"));
		values.add(new Value(0, "Baaron"));
		values.add(new Value(1, "Caron"));
		
		
		Collections.sort(values, new Comparator() {

			@Override
			public int compare(Object o1, Object o2)
			{
				if(((Value)o1).getAnzahl() > ((Value)o2).getAnzahl())
				{
					return -1;
				}
				else if(((Value)o1).getAnzahl() < ((Value)o2).getAnzahl())
				{
					return 1;
				}
				else
				{
					return ((Value)o1).getName().compareTo(((Value)o2).getName());
				}
			}
		});
		
		
		for(int i = 0; i < values.size(); i++)
			System.out.println("Anzahl="+values.get(i).getAnzahl() + ", Name=" + values.get(i).getName());
	}

Code:
Anzahl=15, Name=Abron
Anzahl=5, Name=Aaron
Anzahl=3, Name=Baaron
Anzahl=1, Name=Caron
Anzahl=1, Name=Earon
Anzahl=0, Name=Baaron
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Arrayliste mit Objekt anhand von Strings sortieren Java Basics - Anfänger-Themen 8
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
L Input/Output Sortieren Speichern Laden von ArrayListe Java Basics - Anfänger-Themen 14
D komplizierte Arrayliste sortieren Java Basics - Anfänger-Themen 17
J Arrayliste (gefüllte mit arrays) nach datum sortieren Java Basics - Anfänger-Themen 3
G Bei dynamischer Arrayliste nach jeder Auswahl Zahl entfernen Java Basics - Anfänger-Themen 3
M Arrayliste mit beliebig vielen Namen befüllen Java Basics - Anfänger-Themen 4
Poppigescorn Arrayliste Mittels Scanner erweitern Java Basics - Anfänger-Themen 6
Poppigescorn Mithilfe einer Arrayliste einen Notenspiegel ausgeben Java Basics - Anfänger-Themen 12
A Objekt in Arrayliste Java Basics - Anfänger-Themen 2
L Arrayliste von hinten nach vorne ausgeben Java Basics - Anfänger-Themen 10
X Methode kann auf ArrayListe nicht zugreifen! Java Basics - Anfänger-Themen 10
F ArrayListe manuell programmieren? Java Basics - Anfänger-Themen 24
S Daten aus zwei Verschiedenen Tabellen in eine ArrayListe Java Basics - Anfänger-Themen 4
J Best Practice [Code Verbesserung] TXT einlesen und in Arrayliste speichern Java Basics - Anfänger-Themen 5
S ArrayListe in einer JComboBox anzeigen Java Basics - Anfänger-Themen 10
R Eine Arrayliste in XML abspeichern und laden können Java Basics - Anfänger-Themen 7
P Klasse in Klasse einfügen (arrayliste) Java Basics - Anfänger-Themen 7
A ArrayListe ist nur lokal vorhanden Java Basics - Anfänger-Themen 5
B ArrayListe in Arraylist Problem Java Basics - Anfänger-Themen 3
N Kopieren einer ArrayListe Java Basics - Anfänger-Themen 3
S ArrayListe??? Java Basics - Anfänger-Themen 2
J Arrayliste in RandomAccesFile speichern Java Basics - Anfänger-Themen 7
W ArrayListe , Wo ist mein Fehler? Java Basics - Anfänger-Themen 6
K ArrayListe erstellen mit vielen (unendlichen) Weren ??? Java Basics - Anfänger-Themen 29
B Aufgabe: Arrayliste ausgeben, stimmt es so? Java Basics - Anfänger-Themen 8
G ArrayListe vom Server nach Client schicken Java Basics - Anfänger-Themen 17
C ArrayListe ->liste.get Java Basics - Anfänger-Themen 13
ChaosNo1 Arrayliste global nutzen? Java Basics - Anfänger-Themen 4
C Elemente aus Arrayliste ausgeben Java Basics - Anfänger-Themen 6
S Arrayliste füllen Java Basics - Anfänger-Themen 4
O ArrayListe mit Objekten Java Basics - Anfänger-Themen 2
B ArrayListe . WIE AUSLESEN ? Java Basics - Anfänger-Themen 5
G ArrayListe Java Basics - Anfänger-Themen 14
T Objekte aus Datei in ArrayListe werfen Java Basics - Anfänger-Themen 3
D Map<String, Integer> sortieren und der reinfolge nach die Glieder abfragen Java Basics - Anfänger-Themen 3
J HashSet mit Comparable sortieren Java Basics - Anfänger-Themen 13
D 2 ArrayListen gleich sortieren bzw. eine Liste anhand einer anderen Sortieren Java Basics - Anfänger-Themen 6
D Array List mit Objekten sortieren Java Basics - Anfänger-Themen 2
S Daten aus Import Datei auslesen und sortieren Java Basics - Anfänger-Themen 2
H Liste nach String-Länge sortieren Java Basics - Anfänger-Themen 1
O Sortieren mit Insertion Sort Java Basics - Anfänger-Themen 3
M Bubble Sort - Int[] Array sortieren Java Basics - Anfänger-Themen 2
B Array nach Elementwerten sortieren? Java Basics - Anfänger-Themen 1
L Gegebenes Array sortieren, indem zufällige Zahlenpaare aus Array ausgewählt werden Java Basics - Anfänger-Themen 14
Jambolo Karten sortieren nach Rang und Farbe Java Basics - Anfänger-Themen 5
rosima26 Java nach letzter Ziffer sortieren Java Basics - Anfänger-Themen 19
H Kompliziertes Sortieren einer ArrayList mit Objekten(Sortieren nach X und Y) Java Basics - Anfänger-Themen 11
K verschiedene Eingaben sortieren Java Basics - Anfänger-Themen 6
G zweidimensionales int Array sortieren Java Basics - Anfänger-Themen 57
K Java sortieren. Java Basics - Anfänger-Themen 7
D Array Elemente sortieren in aufsteigender Reihenfolge Java Basics - Anfänger-Themen 10
J Tabelle Sortieren Java Basics - Anfänger-Themen 48
rafi072001 Sortieren einer HashMap nach Values Java Basics - Anfänger-Themen 2
L Sortieren Java Basics - Anfänger-Themen 1
C Wie 2 Arrays zusammenfügen und sortieren? Java Basics - Anfänger-Themen 11
C ArrayList sortieren nach bestimmten Buchstaben in den Wörtern Java Basics - Anfänger-Themen 13
javaluke Erste Schritte Array nach Datentyp sortieren Java Basics - Anfänger-Themen 16
O 2D-Array nach einer Spalte sortieren Java Basics - Anfänger-Themen 22
C Sortieren einer ArrayList Java Basics - Anfänger-Themen 2
A Teilarrays eines 2D-Arrays sortieren Java Basics - Anfänger-Themen 4
JD_1998 Random Array sortieren mit Hilfe einer Methode Java Basics - Anfänger-Themen 4
java3690 eine liste sortieren Java Basics - Anfänger-Themen 12
DorFey Sortieren eines mehrdimensionalen Arrays Java Basics - Anfänger-Themen 8
P Sortieren von Listen nach Attributen Java Basics - Anfänger-Themen 3
W Personen sortieren mit Comparator Java Basics - Anfänger-Themen 9
U Objekte in einer LinkedList sortieren Java Basics - Anfänger-Themen 5
B HashMap alphabetisch sortieren Java Basics - Anfänger-Themen 2
S Streams - Abfrage absteigend sortieren Java Basics - Anfänger-Themen 11
V Collections ArrayList mit Comparator sortieren Java Basics - Anfänger-Themen 16
V Collections int Werte in einer Liste sortieren Java Basics - Anfänger-Themen 23
L Array sortieren Java Basics - Anfänger-Themen 4
L Java Int-Array, Zahlen sortieren Java Basics - Anfänger-Themen 8
T Java: Array monat absteigend sortieren? Java Basics - Anfänger-Themen 1
B Liste sortieren? Java Basics - Anfänger-Themen 4
P Array Sortieren mit boolean? Java Basics - Anfänger-Themen 33
scratchy1 Array sortieren und dann String-Repräsentation ausgeben Java Basics - Anfänger-Themen 2
O Arrays sortieren in einer Methode Java Basics - Anfänger-Themen 2
E Methoden 2 Arrays sortieren (MergeSort) Java Basics - Anfänger-Themen 3
B Suchen und sortieren Java Basics - Anfänger-Themen 10
F Zahlen im Feld sortieren + Unterprogramm Java Basics - Anfänger-Themen 4
O Zweidimensional Array sortieren Java Basics - Anfänger-Themen 14
J Liste,Queue,Stack sortieren Java Basics - Anfänger-Themen 2
CptK Variablen Teile eines Arrays zufällig sortieren Java Basics - Anfänger-Themen 7
K Methoden Array[][] sortieren Java Basics - Anfänger-Themen 30
CptK Datentypen Integer ArrayList sortieren Java Basics - Anfänger-Themen 2
E ArrayList sortieren Java Basics - Anfänger-Themen 16
L Methode zum sortieren Java Basics - Anfänger-Themen 1
L Methode zum sortieren Java Basics - Anfänger-Themen 1
B Sortieren mit Iterator Java Basics - Anfänger-Themen 4
B Wie kann ich die Buchstaben sortieren nach der Höhe der Zahlen Java Basics - Anfänger-Themen 14
A Sortieren ausgerechneter Werte aus einer TXT Datei Java Basics - Anfänger-Themen 8
E LMC (Assembler) Sortieren von 3 Zahlen Java Basics - Anfänger-Themen 4
J String, Int und double Array sortieren Java Basics - Anfänger-Themen 16
F Liste nach einer Variablen sortieren Java Basics - Anfänger-Themen 6
A Array sortieren Java Basics - Anfänger-Themen 1
N StringArray alphabetisch sortieren Java Basics - Anfänger-Themen 4
Tommy135 Erste Schritte JavaDoc Sortieren Java Basics - Anfänger-Themen 5
R Winkel berechnen bzw. Geraden sortieren Java Basics - Anfänger-Themen 33
L (Integer) Liste nach aufsteigender Summe der Ziffern sortieren (mit Bedingung) Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Neue Themen


Oben