私のマップの値型は List<Pair<Integer, String>>
リストの最初のペアの左側で並べ替えたいと思います。しかし、次のようなエラーがあります。
コンストラクター
TreeMap<String,List<Pair<Integer,String>>> (Comparator<List<Pair<Integer,String>>>)
は未定義です
これが私のコードです:
import java.util.TreeMap;
import org.apache.commons.lang3.tuple.Pair;
Map<String, List<Pair<Integer, String>>> data = new HashMap<String, List<Pair<Integer,String>>>();
....
Comparator<List<Pair<Integer, String>>> valueComparator = new Comparator<List<Pair<Integer, String>>>() {
@Override
public int compare(List<Pair<Integer, String>> o1,
List<Pair<Integer, String>> o2) {
int rzt = o1.get(0).getLeft() - o2.get(0).getLeft();
return rzt;
}
};
TreeMap<String, List<Pair<Integer, String>>> sortedByValues = new TreeMap<String, List<Pair<Integer, String>>>(valueComparator);
sortedByValues.putAll(data);