Moinsen,
bin gerade am üben und habe mich ein wenig verbissen. Versuche in Java ein beliebig verschachteltes Array platt zu hauen.
Habe das jetzt für ArrayList und für nicht primitive Datentypen hinbekommen.
Komme aber bei den primitiven Datentypen leider nicht weiter.
Hier meine 2 bisherigen Lösungen:
habt ihr eine Tipp für mich?
bin gerade am üben und habe mich ein wenig verbissen. Versuche in Java ein beliebig verschachteltes Array platt zu hauen.
Habe das jetzt für ArrayList und für nicht primitive Datentypen hinbekommen.
Komme aber bei den primitiven Datentypen leider nicht weiter.
Hier meine 2 bisherigen Lösungen:
Code:
public static ArrayList flatten(Object[] arr) {
ArrayList res = new ArrayList();
for (int i = 0; i < arr.length; i++) {
if (arr[i] instanceof Object[]) {
res.addAll(flatten((Object[]) arr[i]));
} else {
res.add(arr[i]);
}
}
return res;
}
static List flatten(List list) {
ArrayList res = new ArrayList();
for (int i = 0; i < list.size(); i++) {
if (list.get(i) instanceof List) {
res.addAll(flatten((List) list.get(i)));
} else {
res.add(list.get(i));
}
}
return res;
}
habt ihr eine Tipp für mich?