Java 中获取最小值索引,处理多个最小值情况
如果有多个最小值,并且不能使用list.get方法来获取元素,可以使用以下方式来获取最小值的索引:\n\njava\nList<BigDecimal> minValues = list.stream()\n .filter(value -> value.compareTo(minValue.get()) == 0)\n .collect(Collectors.toList());\n\nif (minValues.isEmpty()) {\n throw new IllegalArgumentException("List is empty");\n}\n\nreturn list.indexOf(minValues.get(0));\n\n\n这里使用了filter方法来过滤出和最小值相等的元素,并将它们收集到一个新的列表中。然后判断新列表是否为空,如果为空,则抛出异常;如果不为空,则返回新列表中第一个元素的索引。请注意,如果有多个最小值,这种方式只返回第一个最小值的索引。如果需要返回所有最小值的索引,可以将结果类型改为List<Integer>,并返回新列表中所有元素的索引。
原文地址: https://www.cveoy.top/t/topic/qaGl 著作权归作者所有。请勿转载和采集!