Listen erstellen mit unterschiedlichen Reihenfolgen

metalfan

Aktives Mitglied
Hallo,

habe hier eine Liste mit 6 Elementen (zur vereinfachung 1..6 genannt)
1,2,3,4,5,6


was ich bauen möchte sind 6 neue Listen in folgender Reihenfolge:
1,2,3,4,5,6
2,1,3,4,5,6
3,1,2,4,5,6
4
5
6

also das erste Element jeder Liste erhöt sich jeweils um eins, die anderen werden angehängt

Code:
List<List<SbuEntity>> allLists = new ArrayList<List<SbuEntity>>();
		for (int n=0; n<myList.size(); n++) {
			List<SbuEntity> tmp = new ArrayList<SbuEntity>();
			System.out.println("element: " + n + " is first in this list");
			//das erste Element der Liste fest setzen
			tmp.add(myList.get(n));
			
			//Die Listen befüllen
			for (int h=1; h<myList.size(); h++) {
				if (h==n) {
					System.out.println(h);
					//Dieses Element überspringen, da es oben bereits gesetzt wurde
				}
				else {
					System.out.println("h: " + h);
					//System.out.println(myList.get(h).getName());
					tmp.add(h, myList.get(h));      //XXXXX
				}
			}
			System.out.println(tmp);
			
		}


Dieser Code bricht ab mit:
Code:
element: 0 is first in this list
h: 1
h: 2
h: 3
h: 4
h: 5
[Bathroom [name=Kathrin, standupTime=08:00 lazyTime=00:00, duration=10, bathEntry=08:00], Bathroom [name=Laura, standupTime=08:00 lazyTime=00:00, duration=20, bathEntry=08:00], Bathroom [name=Sara, standupTime=08:00 lazyTime=00:00, duration=5, bathEntry=08:00], Bathroom [name=Susi, standupTime=08:00 lazyTime=00:00, duration=30, bathEntry=08:00], Bathroom [name=Sandra, standupTime=08:00 lazyTime=00:00, duration=5, bathEntry=08:00], Bathroom [name=Elena, standupTime=08:00 lazyTime=00:00, duration=40, bathEntry=08:00]]
element: 1 is first in this list
1
h: 2


IndexOutOfBoundsException: Index 2, size 1 in der Zeile //XXXXX

Warum?
 

Neue Themen


Zurück
Oben