【发布时间】:2014-10-19 16:57:27
【问题描述】:
我正在尝试使用其参数之一对 VariantOptionData ArrayList 进行排序。
这是我的VariantOptionData
public class VariantOptionData implements java.io.Serializable
{
private Collection<VariantOptionQualifierData> variantOptionQualifiers;
private StockData stock;
private NGCPSizeEnum cs2;
}
我想使用 cs2 参数对这个列表进行排序。我就是这样的..
List<VariantOptionData> allSizes = Converters.convertAll(style.getVariants(), getVariantOptionDataConverter());
Collections.sort(allSizes, new Comparator<VariantOptionData>()
{
@Override
public int compare(final VariantOptionData s1, final VariantOptionData s2)
{
return Integer.parseInt(s1.getCs2().getCode()) < Integer.parseInt(s1.getCs2().getCode()) ? s1.getCs2().getCode() : s2.getCs2().getCode();
}
});
我知道它错了,但我正在尝试这样的事情,但无法理解比较器的工作原理。 cs2 是一个以代码为增量值的枚举字段。我想使用Integer.parseInt(s1.getCs2().getCode()) 递增顺序对这个列表进行排序。请帮忙
【问题讨论】:
标签: java sorting collections arraylist comparator