同一列表的多个不同视图
Multiple differing views of the same list
我正在尝试为名为 Ship 的 class 创建迭代器。这是一个遗传算法示例。
Ship 的两个关键属性是重量和体积(背包问题)。我想要一个按重量排序的迭代器,一个按体积排序的迭代器。
我在为 Ship class 设置工具 Comparable<(?)>
界面时遇到问题。
起初我试图传递一个名为 Value 的 Class,它有一个代表其类型的枚举和一个浮点值。我有一个看起来像这样的 CompareTo
方法:
return int CompareTo(Value arg0)
switch (arg0.type())
case WEIGHT:
return this._weight.compareTo(arg0.value);
...
最好有两个比较器,一个根据重量进行比较,一个根据体积进行比较,然后使用这些比较器按需进行排序。
我正在尝试为名为 Ship 的 class 创建迭代器。这是一个遗传算法示例。
Ship 的两个关键属性是重量和体积(背包问题)。我想要一个按重量排序的迭代器,一个按体积排序的迭代器。
我在为 Ship class 设置工具 Comparable<(?)>
界面时遇到问题。
起初我试图传递一个名为 Value 的 Class,它有一个代表其类型的枚举和一个浮点值。我有一个看起来像这样的 CompareTo
方法:
return int CompareTo(Value arg0)
switch (arg0.type())
case WEIGHT:
return this._weight.compareTo(arg0.value);
...
最好有两个比较器,一个根据重量进行比较,一个根据体积进行比较,然后使用这些比较器按需进行排序。