0

我是 Java 编程语言的新手,想创建一个程序,使用扫描仪类读取三个单词,并在主要方法中按字典顺序排列这三个单词,例如用户输入 Tom Harry Dick,答案应该是 Dick Harry 和 Tom .. 我尝试使用 if 语句来使用 java compareTo() 比较字符串,但 if 语句不会为我返回任何内容,因为 main 方法是无效的。

public class SortWords {

public static void main(String[] args) {
    Scanner userInput = new Scanner(System.in);

    String firstWord;
    String secondWord;
    String thirdWord;


    System.out.println("Enter three words seperated by white space");

    firstWord = userInput.next();
    System.out.println(firstWord);

    secondWord = userInput.next();
    System.out.println(secondWord);

    thirdWord = userInput.next();
    System.out.println(thirdWord);

}

}

4

2 回答 2

3

然后尝试读取为数组元素,然后对该数组进行排序

public static void main (String[] args)
{
    Scanner input = new Scanner(System.in);
    String[] strings = new String[3];

    for (int i = 0; i < strings .length; i++)
    {
        System.out.println("Please enter name");
        strings [i] = input.next();
    }
}

Arrays.sort(strings);
于 2013-06-03T04:10:41.253 回答
1

“我尝试使用 if 语句来使用 java compareTo() 比较字符串,但 if 语句不会为我返回任何内容,因为 main 方法是无效的。”

这是不正确的。

首先,我们没有说 if 语句“返回任何东西”,我们说它{ }根据其条件(由 括起来( ))评估为真或假来选择执行其语句块(由 括起来的那个)。(类似的想法何时elseelse if抛出)

其次,这不受它所在方法的返回类型的影响,因为它与返回无关。

您应该使用 print 和 println 语句打印出三个字符串的比较结果,因为这是main方法,没有更高的方法可以返回。

于 2013-06-03T04:14:23.337 回答