我正在尝试为名为Ship的类创建迭代器。这是一个遗传算法的例子。
Ship的两个关键属性是重量和体积(背包问题)。我希望一个迭代器按重量排序,一个按体积排序。
我在设置Ship类的实现Comparable<(?)>
接口时遇到了问题。
起初我尝试传递一个名为Value的类,它有一个表示其类型和浮点值的枚举。我有一个CompareTo
方法,如下所示:
return int CompareTo(Value arg0)
switch (arg0.type())
case WEIGHT:
return this._weight.compareTo(arg0.value);
...
答案 0 :(得分:1)
你最好有两个比较器,一个基于重量比较,另一个基于音量,并使用这些比较器按需排序。