Pythonスニペットに相当するJavaを探しています
max_valued_key = max(str_to_double_map.keys(), key=lambda x: str_to_double_map[x])
Collections.max のような標準的なものが必要です。他のコンパレータごとにもう 1 つのクラスを作成したくないため、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の内部クラスでは、外部から非最終変数にアクセスできないようです!
前もって感謝します!