用户输入两个选择的单词时的最短字长

时间:2018-02-02 21:56:02

标签: java

我只是需要一些我似乎无法弄清楚的特定部分的帮助。目的是让用户输入两个单词并让程序输出哪个是最短的。

例如:

输入第一个字:Island

输入第二个字:Fire

最短的长度是:4

最短的单词为Fire,仅作为示例

对我来说最困难的部分,因为我真的只是java的初学者,正在弄清楚如何让系统读取两个输入并告诉哪一个是最短的。我需要能够使用String和Math类来完成此任务。

最后一行代码就是我试图解决问题,没有运气

import java.util.Scanner;

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

        // User inputs first word
        System.out.print("Enter your first word: ");
        String word1 = scan.next();

        // User inputs second word
        System.out.print("Enter your second word: ");
        String word2 = scan.next();

        // Accounts for both words to figure out which is the shortest    
        bWords = Math.min(word1, word2);
        System.out.println("THC: " + bWords.length());
    }
}

2 个答案:

答案 0 :(得分:3)

我的建议是阅读JavaDoc,它清楚地表明参数必须是数字:

public static int min(int a, int b)

JavaDoc还说Math#min返回一个数值,因此bWords = Math.min(word1, word2)毫无意义。

有了这些知识,你可以得出结论:bWords应该是一个整数,因此不应该在String#length上调用bWords,而应该是一个不同的变量。在那之后,其余的应该更容易。

如果您不熟悉JavaDocs,则可以使用更简单的解决方案。尝试研究它。很多人都有already asked个问题。你只需要look for it。这就是为什么在你问之前你是required to research的原因。

答案 1 :(得分:0)

您可以通过获取length

来比较两个String的{​​{1}}
length()