要查找给定类型集合中的最小值,我需要将“值”设置为什么才能将其与“min”进行比较?值应该是集合中的下一个元素,它应该迭代直到集合被完全读取。
public <T> T min(Collection<T> c, Comparator<T> comp) {
if ((c == null) || (comp == null)) {
throw new IllegalArgumentException();
}
if (c.isEmpty() == true) {
throw new NoSuchElementException();
}
Iterator itr = c.iterator();
T min = (T)itr.next();
T value = ;
while (itr.hasNext()) {
if (comp.compare(min, value) < 0) {
min = value;
}
}
return min;
}
答案 0 :(得分:3)
使用以下代码:
Iterator itr = c.iterator();
T min = (T)itr.next();
T value;
while (itr.hasNext()) {
value=(T)itr.next();
if (comp.compare(min, value) < 0) {
min = value;
}
}