使用Scanner输入字符串

时间:2017-07-16 19:37:02

标签: java string input output

我正在尝试构建一个简单的5个单词的句子,其中每个单词都标记并显示。即主语 - 动词等。然后最后它会做一个完整的连贯句子。然而,当我运行代码时,我收到一个错误,我不确定原因。

public class Sentence {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
       // TODO code application logic here
       Scanner input = new Scanner(System.in);

       System.out.println("Enter Subject:");
       int Subject = input.nextInt();

       System.out.println("Enter Verb:");
       int Verb = input.nextInt();

       System.out.println("Enter Adjective:");
       String Adjective;
       Adjective = input.next();

       System.out.println("Enter Object:");
       String Object;
       Object = input.next();

       System.out.println("Enter Adverb:");
       String Adverb;
       Adverb = input.next();

       System.out.println("Subject  + Verb + Adjective + Object + Adverb");

    }
}

2 个答案:

答案 0 :(得分:0)

我认为所有人都必须阅读字符串内容(两个人首先等待一个int)所以也许你想要这样的一些

  public static void main(String[] args) {
        // TODO code application logic here
        Scanner input = new Scanner(System.in);

        System.out.println("Enter Subject:");
        String subject = input.next();

        System.out.println("Enter Verb:");
        String verb = input.next();

        System.out.println("Enter Adjective:");
        String adjective;
        adjective = input.next();

        System.out.println("Enter Object:");
        String object;
        object = input.next();

        System.out.println("Enter Adverb:");
        String adverb;
        adverb = input.next();

        System.out.println(subject + " " + verb + " " + adjective + " " + object + " " + adverb);
    }

答案 1 :(得分:0)

你说你想做一个全面的判决。现在,看看你的代码。你会看到你使用了没有意义的整数。

1)您使用扫描仪,但您没有导入Scanner类。这是您的第一个问题。如果您想使用扫描仪,您应该始终导入"扫描仪类"在代码的开头。

2)你想做一个整合的句子,所以它应该有单词。但是你使用了整数。你应该使用String和NextLine();为了它。

3)在代码的最后,System.out.println("Subject + Verb + Adjective + Object + Adverb"); 删除所有引号,您的代码应运行良好。

所以你的代码应该是这样的。