やあ、
たとえば、非論理的な文字列のリストがあります。
Scanner s = new Scanner(
"m29 523\n" +
"b34 827\n" +
"p42 235\n" +
"b34 294\n" +
"t78 421\n" +
"t78 673\n" +
"c93 173\n" +
"k46 925\n" +
"k46 322\n" +
"x21 644\n");
次に、文字列をスペースの前後の 2 つの部分に分割し、重複を排除し、重複 (b34、t78、k46) の中で最大値 (スペースの後) のみを残します。私はそのような出力を意味します:
"m29 523"
"b34 827"
"p42 235"
"t78 673"
"c93 173"
"k46 925"
"x21 644"
2つの部分に分けて重複を排除するために、私はそのようなコードを使用しましたが、私にとっては問題ありません:
Map<String, ArrayList<String>> list = new HashMap<String, ArrayList<String>>();
while (s.hasNext()){
String key = s.next();
if(!list.containsKey(key));
list.put(key, new ArrayList<String>());
list.get(key).add(s.next());
}
System.out.println(list);
しかし、ここで文字列の 2 番目の部分の比較を実装して最大値を取得する方法がわかりませんか? Integer.parseInt(list.get(キー))?