Ich habe eine benutzerdefinierte ArrayList. Ich muss diese ArrayList in einer bestimmten Reihenfolge in Bezug auf ein Ganzzahl-Array neu anordnen. Z. BArrayList in Java neu anordnen
List<String> test = new ArrayList();
test.add("red");
test.add("green");
test.add("blue");
int [] X = {2,0,1};
neu ordnen, um diese Arraylist w.r.t X-Array. dh Artikel im 2. Index sollte auf Platz 3 zu 1., 0. Artikel an 2. Position und ersten Punkt kommen
ausgegeben werden soll:
blue
red
green
Ich weiß, wie es zu tun, nur mit for-Schleife wissen wollen, ob es gibt eine bessere Lösung als diese.
Wie wäre es eine Klasse erstellen, die 'ID' und' color' als Felder. Und dann machen Sie 'ArrayList' dieser Klasse und sortieren sie dann mit einem benutzerdefinierten Vergleicher basierend auf' ID'? –
Abgesehen von der Erstellung einer neuen Wrapper-Klasse, die nach ID sortiert werden kann, sehe ich keinen sauberen Weg. –
Eigentlich ist es kein Duplikat dieser Frage, in diesem Fall wird benötigt, um Elemente in benutzerdefinierter Reihenfolge zu verschieben, nicht die Position – RudiDudi