我正在寻找 Python 片段的 Java 等价物
max_valued_key = max(str_to_double_map.keys(), key=lambda x: str_to_double_map[x])
我想要像 Collections.max 这样的标准有没有办法通过Comparator 的内联定义
来做到这一点,因为我不想为每个其他比较器再写一个类。
我尝试以下代码失败
depScores = foo();
String dep = Collections.max(depScores.keySet(), new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
return depScores.get(o1).compareTo(depScores.get(o2));
}
});
depScores 变量无法从比较器中读取。
看起来在 java 内部类中无法从外部访问非最终变量!
提前致谢!