gpt4 book ai didi

java - 如果有多个这样的数字,如何输出keySet中最大的数字?

转载 作者:行者123 更新时间:2023-12-01 14:10:19 26 4
gpt4 key购买 nike

如果有多个这样的数字,如何输出最大的单词? (应该输出较早发生的那个)。我的代码无法正常工作。

import java.io.*;
import java.util.*;
public class solved {
public static void main(String[] args) {
LinkedHashMap<Integer, String> hashMap = new LinkedHashMap<>();
Scanner scan = new Scanner(System.in);
String[] str = scan.nextLine().split(" ");
for (int i=1; i < str.length; i++) {
int n = str[i].length();
String s = str[i];
hashMap.put(n, s);
}
int maxKey = Collections.max(hashMap.keySet());
System.out.println(hashMap.get(maxKey));
}
}

最佳答案

您可以使用 putIfAbsent避免覆盖现有值并保留最早的值

for (int i=1; i < str.length; i++) {
int n = str[i].length();
String s = str[i];
hashMap.putIfAbsent(n, s);
}

⚠️ 从 1 开始 i 使得第一个单词未被使用要小心,数组是 0-indexed 所以从 0 了解每一个字

关于java - 如果有多个这样的数字,如何输出keySet中最大的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62139115/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com