我需要获取 Java 数组列表中最小值的索引值。我的数组列表包含多个浮点数,我正在尝试想出一种方法来获取最小浮点数的索引号,这样我就可以在代码中的其他地方使用该索引号。我是个初学者,所以请不要讨厌我。谢谢!
您可以使用集合.min http://docs.oracle.com/javase/7/docs/api/java/util/Collections.html#min%28java.util.Collection%29 and 列表.indexOf http://docs.oracle.com/javase/7/docs/api/java/util/List.html#indexOf%28java.lang.Object%29:
int minIndex = list.indexOf(Collections.min(list));
如果只想遍历列表一次(上面可能会遍历两次):
public static <T extends Comparable<T>> int findMinIndex(final List<T> xs) {
int minIndex;
if (xs.isEmpty()) {
minIndex = -1;
} else {
final ListIterator<T> itr = xs.listIterator();
T min = itr.next(); // first element as the current minimum
minIndex = itr.previousIndex();
while (itr.hasNext()) {
final T curr = itr.next();
if (curr.compareTo(min) < 0) {
min = curr;
minIndex = itr.previousIndex();
}
}
}
return minIndex;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)