我应该做的是有一个返回 Map.Entry<String, Integer>
类型的方法
一个通过参数的方法 Map<String, Integer>
并返回类型 Map.Entry<String, Integer>
它具有最低的整数。
public static Entry<String, Integer> findLowest(Map<String, Integer> map)
{
int min = 10000;
String nm ="";
Set<Map.Entry<String, Integer>> ss = map.entrySet();
System.out.println("map entryset"+map.entrySet());
Iterator<Map.Entry<String, Integer>> it = ss.iterator();
Map.Entry<String, Integer> e = null;
Map.Entry<String, Integer> ee = e;
while(it.hasNext())
{
e = it.next();
System.out.println("e.getvalue: "+ e.getValue());
System.out.println("min: "+ min);
if(e.getValue() < min)
{
System.out.println("lower than");
min = e.getValue();
nm = e.getKey();
}
}
System.out.println(ee);
return e;
}
最佳答案
如果您被允许使用 Java 8,您可以使用条目流中的 min
方法。只需提供 Comparator 即可比较条目的值。
public static Map.Entry<String, Integer> findLowest(Map<String, Integer> map){
return map.entrySet()
.stream()
.min(Comparator.comparing(Map.Entry::getValue))
.orElse(null);
}
关于java - 查找并返回标记最低的条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39078281/