dzyan
Mitglied
Hallo !
Ich habe ein Problem. Ich habe eine Klasse manschaften geschrieben mit mannschaften.punkte und mannschaften.torDiff. Ich kann zwar nach punkte sortieren, kriege aber die punkte-Sortierung nicht auf das ganze Klassen-Array hin - eben nur auf die punkte-Spalte. Und habe überhaupt keine keine Ahnung wie dann auch noch zusätzlich nach der torDiff sortiert werden soll (beides int[]-Klassen-Werte).
Klasse:
---------
public DrehFB(int in, String m, int s, int g, int b, int t, int p)
{
index = in;
mannschaft = m;
spiele = s;
gTore = g;
bTore = b;
torDiff = t;
punkte = p;
}
static DrehFB[] mannschaften = new DrehFB[MANNSCHAFTEN_MAX];
Sortierung:
-------------
static int ordnenTabelle(int mNr)
{
int[] puffer = new int[mNr];
for (int p = 0; p < mNr; p++)
{
puffer[p] = mannschaften[p].punkte;
}
Arrays.sort(puffer);
for (int o = 0, p = (mNr - 1); p >= 0; p--, o++)
{
DrehFB dummy = mannschaften[o];
mannschaften[o] = mannschaften[puffer[p]];
mannschaften[puffer[p]] = dummy;
}
return mNr;
}
... die letzte For-Schleife kann man vergessen, die ist 100 %ig falsch.
Mir fällt nur nicht die richtige ein - oder bin ich hier überhaupt falsch unterwegs ?
Danke im voraus
Dzyan
Ich habe ein Problem. Ich habe eine Klasse manschaften geschrieben mit mannschaften.punkte und mannschaften.torDiff. Ich kann zwar nach punkte sortieren, kriege aber die punkte-Sortierung nicht auf das ganze Klassen-Array hin - eben nur auf die punkte-Spalte. Und habe überhaupt keine keine Ahnung wie dann auch noch zusätzlich nach der torDiff sortiert werden soll (beides int[]-Klassen-Werte).
Klasse:
---------
public DrehFB(int in, String m, int s, int g, int b, int t, int p)
{
index = in;
mannschaft = m;
spiele = s;
gTore = g;
bTore = b;
torDiff = t;
punkte = p;
}
static DrehFB[] mannschaften = new DrehFB[MANNSCHAFTEN_MAX];
Sortierung:
-------------
static int ordnenTabelle(int mNr)
{
int[] puffer = new int[mNr];
for (int p = 0; p < mNr; p++)
{
puffer[p] = mannschaften[p].punkte;
}
Arrays.sort(puffer);
for (int o = 0, p = (mNr - 1); p >= 0; p--, o++)
{
DrehFB dummy = mannschaften[o];
mannschaften[o] = mannschaften[puffer[p]];
mannschaften[puffer[p]] = dummy;
}
return mNr;
}
... die letzte For-Schleife kann man vergessen, die ist 100 %ig falsch.
Mir fällt nur nicht die richtige ein - oder bin ich hier überhaupt falsch unterwegs ?
Danke im voraus
Dzyan