私は自分のオブジェクトをソートするために私のバブルをソートしました(結局)。ただし、降順ではなく昇順で印刷されます。私の知る限り、私はCollections.Reverseを使用することができることを知っていますが、(そしてこれは一種の「宿題」です)それを使用することはできません。
private void bubbleSort()
{
for (int i = 0; i < employees.size() - 1; i++)
{
for (int j = 0; j < employees.size() - i -1; j++)
{
if (employees.get(j).compareTo(employees.get(j+1)) > 0)
{
Employee temp = employees.get(j+1);
employees.set(j+1, employees.get(j));
employees.set(j, temp);
}
}
}
}
基本的に私が疑問に思っているのは、マイナスをプラスに、またはマイナスに、プラスより大きく変更して、逆の方法でソートすることができる方法はありますか。ありがとう。
回答:
回答№1の場合は3この行を変更する
if (employees.get(j).compareTo(employees.get(j+1)) > 0)
これに
if (employees.get(j).compareTo(employees.get(j+1)) <= 0)
そしてそれは逆の順序でソートされます。
回答№2の場合は0
それで、compareToメソッドの実装を変更することができます。そのため、このコードを微調整する必要はまったくありません。