Hallo Zusammen,
ich soll eine Methode schreiben, die ein Array vom Typ Long[] wie folgt ausgibt:
Gruppiert in gerade und ungerade, d.h. erst alle geraden, dann alle ungeraden, reihenfolgeerhaltend.
Ich habe jetzt eine Version geschrieben, die zwar funktioniert, aber die mir echt gar nicht gefällt.
Die ist total redundant und irgendwie auch nicht besonders clever gelöst. Könnte mir jemand einen Tip geben,
wie man das viellicht noch besser lösen könnte?!
gruß, Phill
Code:
long[] gruppiert(final long[] zahlen) throws IllegalArgumentException{
if (zahlen == null){
throw new IllegalArgumentException();
}
int pos=0;
final long[] result = new long[zahlen.length];
for(int e=1;e<=2;e++){
for(int i=0;i<zahlen.length;i++){
if (e==1) {
if (zahlen[i]%2==0){
result[pos]=zahlen[i];
pos++;
}
}else{
if (zahlen[i]%2!=0){
result[pos]=zahlen[i];
pos++;
}
}
}
}
return result;
}
PS: mir würde auch nen Ansatz in Pascal total reichen.