2D-Array sortieren

Kusti

Neues Mitglied
Hallo Leute!
Ich habe ein Problem bei einem Programm. Das sieht so aus:
Ich habe grundsätzlich eine Liste von 6 Wertpaaren in Arrays gespeichert. Dies sind Namen und Alter.

Diese haben folgende Werte:

(In dem Programm werden sie von einer Datenbank gelesen und dann in ein Array übertragen, nicht einfach so definiert)

Java:
...


	int personenAnzahl = 6;
        String personenliste[][] = new String[6][2];

        personenliste[0][0]="Hans";
        personenliste[0][1]="73";
        personenliste[1][0]="Jürg";
        personenliste[1][1]="56";
        personenliste[2][0]="Oli";
        personenliste[2][1]="61";
        personenliste[3][0]="Jimmy";
        personenliste[3][1]="35";
        personenliste[4][0]="Fritz";
        personenliste[4][1]="63";
        personenliste[5][0]="Jan";
        personenliste[5][1]="16";

//HIER KOMMT DIE SORTIERUNG
		
		//Die Abfrage
		for(int i = 0; i<personenAnzahl;i++){
		  for(int j=0; j<2; j++){
		      System.out.println(personenliste[i][j]);
		  }
		}
...


Ergibt die Ausgabe:
Hans
73
Jürg
56
Oli
61
Jimmy
35
Fritz
63
Jan
16


Nun der Punkt wo ich Hilfe brauche:

Bei dem „HIER KOMMT DIE SORTIERUNG“ soll das Array so sortiert werden, dass bei der Abfrage folgende Ausgabe kommt (die Wertpaare beibehalten und nach dem Alter sortieren).

Jan
16
Jimmy
35
Jürg
56
Oli
61
Fritz
63
Hans
73

Dabei sind eigentlich die Hauptprobleme, dass ich ein 2d-Array sortieren muss, und dass das Alter (damit es in das Array gepackt werden kann) zu String umgewandelt werden muss.

Zusätzliche Infos:
-Die Datenpaare werden zuerst von einer Datenbank eingelesen, somit ist es ohne Problem möglich, sie auch anders als in Arrays zu speichern. Ich dachte jedoch, mit Arrays wäre das Sortieren einfach…

Vielen Dank und liebe Grüsse

Kusti
 

Clayn

Aktives Mitglied
Du könntest dir eine Klasse z.B.
Code:
Person
machen in der Name und alter gespeichert wird und die
Code:
Comparable<Person>
implementiert.

Dann brauchst du nur noch ein 1-dimensionales Array welches sich dann auch einfach sortieren lassen sollte.

MFG
Clayn
 
G

Gast2

Gast
-Die Datenpaare werden zuerst von einer Datenbank eingelesen, somit ist es ohne Problem möglich, sie auch anders als in Arrays zu speichern. Ich dachte jedoch, mit Arrays wäre das Sortieren einfach…
Wesentlich einfacher wäre es aus jedem Datensatz ein Objekt zu erstellen, und dann später mit einer List<DeinTyp> weiterzuarbeiten, die lässt sich dann auch sehr leicht sortieren.

Mit deinem 2D Array könntest du das so machen:
Java:
Arrays.sort(personenliste, new Comparator<String[]>() {
	@Override
	public int compare(String[] o1, String[] o2) {
		return Integer.parseInt(o1[1]) - Integer.parseInt(o2[1]);
	}
});
Das geht aber wie gesagt wesentlich eleganter wenn du nen eigenen Datentyp hast.
 
H

hüteüberhüte

Gast
@EikeB: Mal eine grundsätzliche Frage. Wenn die Anzahl der Elemente vorher noch nicht feststeht und hinterher sortiert werden soll, nimmt man dann lieber eine ArrayList oder eine LinkedList? Oder nimmt man erst die LinkedList und überführt sie dann in eine ArrayList? Was wäre vom Aufwand her geringer oder beides gleich?

Die Idee mit dem Comparator ist gut. Aber lieber:
Code:
Integer.parseInt(o1[1]).compareTo(Integer.parseInt(o2[1]))
. (Obwohl, gibt ein int zurück glaub ich)
 
G

Gast2

Gast
hüteüberhüte hat gesagt.:
Die Idee mit dem Comparator ist gut. Aber lieber: Integer.parseInt(o1[1]).compareTo(Integer.parseInt(o2[1])) . (Obwohl, gibt ein int zurück glaub ich)
Ja, man müsste aus dem int erst nen Integer machen. Wenn die Werte immer positiv sind kann man aber problemlos einfach die Differenz zurückgeben.


hüteüberhüte hat gesagt.:
@EikeB: Mal eine grundsätzliche Frage. Wenn die Anzahl der Elemente vorher noch nicht feststeht und hinterher sortiert werden soll, nimmt man dann lieber eine ArrayList oder eine LinkedList?
Keine Ahnung, ich benutze immer ne ArrayList. Bisher kam ich noch nicht in die Situation dass da irgendwas zu langsam war.

hüteüberhüte hat gesagt.:
Oder nimmt man erst die LinkedList und überführt sie dann in eine ArrayList? Was wäre vom Aufwand her geringer oder beides gleich?
Ne, das macht man wohl eher nicht ;)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Array List mit Objekten sortieren Java Basics - Anfänger-Themen 2
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
G zweidimensionales int Array sortieren Java Basics - Anfänger-Themen 57
D Array Elemente sortieren in aufsteigender Reihenfolge Java Basics - Anfänger-Themen 10
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
JD_1998 Random Array sortieren mit Hilfe einer Methode Java Basics - Anfänger-Themen 4
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
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 Zweidimensional Array sortieren Java Basics - Anfänger-Themen 14
K Methoden Array[][] sortieren Java Basics - Anfänger-Themen 30
J String, Int und double Array sortieren Java Basics - Anfänger-Themen 16
A Array sortieren Java Basics - Anfänger-Themen 1
informatikschüler21 String im Array sortieren Java Basics - Anfänger-Themen 4
U Methoden Zweidimensionales Array mit Arrays.sort sortieren? Java Basics - Anfänger-Themen 22
W Array sortieren Java Basics - Anfänger-Themen 3
S array sortieren Java Basics - Anfänger-Themen 7
D Array mit Zufallszahlen, dann sortieren: Hilfe gesucht! Java Basics - Anfänger-Themen 1
D Methoden int-Array absteigend sortieren Java Basics - Anfänger-Themen 8
C OOP array Sortieren ohne den sort Befehl Java Basics - Anfänger-Themen 10
S int-Array mittels Arrays.sort() in einer Schleife sortieren. Java Basics - Anfänger-Themen 2
D Erste Schritte array aufsteigend sortieren und ausgeben Java Basics - Anfänger-Themen 17
C Werte im Array sortieren Java Basics - Anfänger-Themen 5
A Input/Output 2-dimensionales array sortieren Java Basics - Anfänger-Themen 3
J Array nach häufigkeit sortieren Java Basics - Anfänger-Themen 4
S Strings im Array nach Namen sortieren Java Basics - Anfänger-Themen 11
E Array sortieren, es will nicht Java Basics - Anfänger-Themen 6
B Problrm beim Array sortieren Java Basics - Anfänger-Themen 0
S Mehrdimensionales Array sortieren Java Basics - Anfänger-Themen 3
G Array mit BubbleSort sortieren Java Basics - Anfänger-Themen 2
F Array mit Zufallszahlen sortieren Java Basics - Anfänger-Themen 7
N Array sortieren Java Basics - Anfänger-Themen 6
J Methoden Einzelnen Wert aus Objekt aus einem Array auslesen und danach sortieren Java Basics - Anfänger-Themen 8
T Sortieren/Suche klappt nicht ganz (String Array) Java Basics - Anfänger-Themen 2
L Array Sortieren Java Basics - Anfänger-Themen 3
H Sortieren von Array Java Basics - Anfänger-Themen 7
I Objekte in einem Array sortieren Java Basics - Anfänger-Themen 19
K Array sortieren Java Basics - Anfänger-Themen 19
P String Sortieren in einem Array Java Basics - Anfänger-Themen 7
T Strings mit compareto vergleichen und array sortieren Java Basics - Anfänger-Themen 14
B Array nach dem Alphabet sortieren Java Basics - Anfänger-Themen 11
J Array mit Objekten sortieren Java Basics - Anfänger-Themen 11
S Array sortieren NULL oder Empty ignorieren. Java Basics - Anfänger-Themen 9
S Array sortieren und ausgeben Java Basics - Anfänger-Themen 3
C zweidimensionales Array sortieren Java Basics - Anfänger-Themen 6
W Objekte in einer Array sortieren Java Basics - Anfänger-Themen 3
R 2D Array sortieren Java Basics - Anfänger-Themen 11
A String-Array lexikographisch sortieren Java Basics - Anfänger-Themen 6
A Array einer eigenen Klasse sortieren Java Basics - Anfänger-Themen 11
J 2D Array mit Zeilenverschiebung Sortieren Java Basics - Anfänger-Themen 15
B Zufällige Zahlen in Array sortieren Java Basics - Anfänger-Themen 18
c_sidi90 Array mit Bubblesort sortieren Java Basics - Anfänger-Themen 8
D OOP mit compareTo Array sortieren (aus zwei Klassen) Java Basics - Anfänger-Themen 3
E Array Sortieren Java Basics - Anfänger-Themen 3
B Array durchlaufen und sortieren Java Basics - Anfänger-Themen 9
L Einzeiler - String Array sortieren Java Basics - Anfänger-Themen 16
J Array aufsteigend sortieren Java Basics - Anfänger-Themen 10
D Array nach ungerade zahlen sortieren Java Basics - Anfänger-Themen 6
A Sortieren von Zahlen in einem Array Java Basics - Anfänger-Themen 13
T Zahlen in ARRAY Sortieren Java Basics - Anfänger-Themen 10
N sortieren zweier abhängiger array listen Java Basics - Anfänger-Themen 12
N Array sortieren - Java Basics - Anfänger-Themen 7
T Array mit Integern sortieren Java Basics - Anfänger-Themen 9
M Array anders sortieren, aber die Reihenfolge beibehalten Java Basics - Anfänger-Themen 4
kulturfenster Array mit Strings sortieren Java Basics - Anfänger-Themen 7
D Mehrdimensionales Array sortieren Java Basics - Anfänger-Themen 5
G Array List sortieren / auswerten Java Basics - Anfänger-Themen 24
B 2D-Array (Tabelle) alphabetisch sortieren Java Basics - Anfänger-Themen 6
S array nach 2 kriterien sortieren Java Basics - Anfänger-Themen 3
R Array sortieren Java Basics - Anfänger-Themen 12
G 2D-Array sortieren Java Basics - Anfänger-Themen 11
M ArrayList in Array, dann sortieren Java Basics - Anfänger-Themen 15
R Array sortieren Java Basics - Anfänger-Themen 2
B 2D Array sortieren Java Basics - Anfänger-Themen 15
I Array sortieren oder Tabelle sortieren ? Java Basics - Anfänger-Themen 2
M 2-dimensionales Array sortieren Java Basics - Anfänger-Themen 2
R String-Array sortieren Java Basics - Anfänger-Themen 12
P Array verkleinern und sortieren Java Basics - Anfänger-Themen 11
I Zahlen in Array schreiben und dann sortieren Java Basics - Anfänger-Themen 7
G float-Array _ohne_ Arrays.sort sortieren Java Basics - Anfänger-Themen 5
P Array füllen & sortieren Java Basics - Anfänger-Themen 3
J Array sortieren Java Basics - Anfänger-Themen 4
M Array mit Werten füllen und sortieren Java Basics - Anfänger-Themen 2
O Array sortieren Java Basics - Anfänger-Themen 3
D erste spalte eines zweidimensionales Array sortieren ??!! Java Basics - Anfänger-Themen 2
T Array verkleinern Java Basics - Anfänger-Themen 2
J Array aus Numberfield Eingaben Java Basics - Anfänger-Themen 7
onlyxlia Anzahl Random Zahlen mit Scanner abfragen und in Array speichern Java Basics - Anfänger-Themen 10
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
Ü Zweidimensionales Array in der ersten Zeile deklarieren Java Basics - Anfänger-Themen 13
Thomas Uppe 2D Array Reihenfolge vermischen Java Basics - Anfänger-Themen 4
T array auslesen Java Basics - Anfänger-Themen 2
Nitrogames Variablen Variable aus JOptionPane Abfrage in Array einfügen Java Basics - Anfänger-Themen 4
moini Auf Array aus Superklasse zugreifen? Java Basics - Anfänger-Themen 2
J ArrayList in 2D-Array konvertieren. Java Basics - Anfänger-Themen 48

Ähnliche Java Themen

Neue Themen


Oben