我正在尝试创建一个程序,要求用户输入三个单词并按字典顺序对它们进行排序。
例子;
- 输入三个用空格分隔的单词:
- 梨 橙 苹果
- 苹果
- 橙子
- 梨
该程序运行良好(如果我尝试上面的示例),除了我将在下面展示的一种组合示例。
例子;
- 输入三个用空格分隔的单词:
- 橙苹果梨
- 苹果
- 梨
- 梨
如果它应该出现在三个单词的中间,程序将跳过第一个单词(橙色)。
我相信这行代码正在影响程序,因为它说“从未使用过这个分配的值”,但我不确定如何解决它,因为我仍然是入门 Java 学习者。
- 中间=第一个词;
由于该行未使用,这就是 Pear 出现两次的原因。
import java.util.*;
public static void main(String[] args)
{
Scanner wordInput = new Scanner(System.in);
String firstWord;
String secondWord;
String thirdWord;
System.out.println("Enter three words separated by spaces: ");
firstWord = wordInput.next();
secondWord = wordInput.next();
thirdWord = wordInput.next();
String top = firstWord;
String bottom = firstWord;
if( top.compareTo(secondWord) > 0)
{
top = secondWord;
}
if( top.compareTo(thirdWord) > 0)
{
top = thirdWord;
}
if( bottom.compareTo(secondWord) < 0)
{
bottom = secondWord;
}
if( bottom.compareTo(thirdWord) < 0)
{
bottom = thirdWord;
}
String middle;
if( !firstWord.equals(bottom) && !firstWord.equals(top) )
{
middle = firstWord;
}
if( !secondWord.equals(bottom) && !secondWord.equals(top) )
{
middle = secondWord;
}
else
{
middle = thirdWord;
}
System.out.println( top );
System.out.println( middle );
System.out.println( bottom );
}
}
有没有人我错过或做错了什么?:( 请感谢您的帮助!