【发布时间】:2010-07-29 14:37:19
【问题描述】:
我想在集合中搜索而不手动迭代元素,但似乎没有一种方法可以执行 Collections.search(myset, target, new ComparatorThing())。我没有看到什么吗?
谢谢。
编辑:
- 我正在搜索除元素自然顺序之外的其他字段。
- 作为手动解决方法,我使用了以下静态方法。应该没问题,因为无论如何您都无法使用比较器中的自定义字段对对方做出任何假设。
public static T search(final Set set, final T searchEntry, final Comparator comparator) {
for (final T entry : set) {
if (comparator.compare(entry, searchEntry) == 0) {
return entry;
}
}
return null;
}
【问题讨论】:
标签: java collections sorting set comparator