final ListBigDecimal bigDecimals 获取所有最小值的索引不能使用listget方法
以下是一个实现获取所有最小值索引的方法:
public static List<Integer> getMinValueIndexes(List<BigDecimal> bigDecimals) {
List<Integer> indexes = new ArrayList<>();
// 初始化最小值为列表中的第一个元素
BigDecimal minValue = bigDecimals.get(0);
// 遍历列表,找到最小值
for (int i = 1; i < bigDecimals.size(); i++) {
BigDecimal current = bigDecimals.get(i);
int comparison = current.compareTo(minValue);
// 如果当前元素小于最小值,则更新最小值,并清空已记录的索引
if (comparison < 0) {
minValue = current;
indexes.clear();
}
// 如果当前元素等于最小值,则记录当前索引
if (comparison == 0) {
indexes.add(i);
}
}
return indexes;
}
注意,该方法中使用了 list.get 方法来获取列表中的元素。如果要避免使用 list.get 方法的话,可以将方法参数改为 List<BigDecimal> bigDecimals, List<BigDecimal> minValueList, List<Integer> minIndexList,并在调用方法时传入相应的参数。这样就可以通过传入参数的方式获取元素,而不是使用 list.get 方法
原文地址: https://www.cveoy.top/t/topic/is6j 著作权归作者所有。请勿转载和采集!