Hallo!
Ich habe das Problem, dass ich ein vorgefertigtes Stück Software habe, dem ich vorne erzähle was ich haben möchte am Ende (zum Beispiel int []) und das mir als Ergebnis ein IntArray vor die Füße wirft.
Für meine Weiterverarbeitung brauche ich aber das int [], weshalb ich bisher so vorgegangen bin:
Das funtkioniert auf alle Fälle schonmal. Nun wollte ich mir das ganze etwas besser verpacken und eine generische Funktion dafür schreiben. Aber auch da habe ich das Problem, dass ich als generische Typen nur Objekte angeben kann, also wieder Integer, nicht aber int.
Meint Ansatz dazu:
Das Objekt wollte ich erzeugen durch:
Geht aber nicht, wegen int.
Kann mir jemand weiterhelfen, wie ich das mit der generischen Klasse geregelt bekomme? Oder gerne auch, wie ich direkt vom IntArray zu int [] komme?
Danke schonmal!
heut
Ich habe das Problem, dass ich ein vorgefertigtes Stück Software habe, dem ich vorne erzähle was ich haben möchte am Ende (zum Beispiel int []) und das mir als Ergebnis ein IntArray vor die Füße wirft.
Für meine Weiterverarbeitung brauche ich aber das int [], weshalb ich bisher so vorgegangen bin:
Code:
IntArray Arr = gibMirDasArray ();
List<Integer> L = Arr.getItem();
int [] DasMoechteIchHaben = new int [L.size()];
for (int i = 0; i < L.size(); i++) {
DasMoechteIchHaben [i] = (int) L.get(i);
Das funtkioniert auf alle Fälle schonmal. Nun wollte ich mir das ganze etwas besser verpacken und eine generische Funktion dafür schreiben. Aber auch da habe ich das Problem, dass ich als generische Typen nur Objekte angeben kann, also wieder Integer, nicht aber int.
Meint Ansatz dazu:
Code:
class castObject< A, L > {
@SuppressWarnings("unchecked")
public A [] getArrayOf (List<L> inp) {
A [] ret = null;
for (int i = 0; i < inp.size(); i++) {
ret [i] = (A) inp.get(i);
}
return ret;
}
}
Das Objekt wollte ich erzeugen durch:
Code:
castObject<int, Integer> = new...
Kann mir jemand weiterhelfen, wie ich das mit der generischen Klasse geregelt bekomme? Oder gerne auch, wie ich direkt vom IntArray zu int [] komme?
Danke schonmal!
heut