我是 Java 新手。我参加了 C 的课程,所以我试图让自己摆脱这种思维模式。我正在编写的程序有一个部分,用户在其中输入一个整数n,然后输入n个单词。然后,此部分搜索这些单词并找到最短的单词,然后将其返回给用户。例如,输入可能是:
输入: 4 JAVA编程很有趣
输出:是
我目前的代码似乎返回了错误的单词。在这种情况下,它返回“PROGRAMMING”,而它应该返回“IS”。我想也许你们都可以指出我正确的方向。
int numwords = scan.nextInt();
String sentence = scan.nextLine();
String shortestword = new String();
String[] words = sentence.split(" ");
for (int i = 0; i < numwords; i++){
if (shortestword.length() < words[i].length()){
shortestword = words[i];
}
}
System.out.printf(shortestword);
为了让您了解我想要做什么,我试图将单词输入一个字符串“sentence”,然后将该字符串分解为数组中的单个单词“words[]”,然后运行 for循环通过将长度与数组中的条目进行比较来相互比较字符串。谢谢您的帮助!