为什么不能多次打印?

时间:2014-10-07 23:06:31

标签: java

我正在尝试将文本翻译为pig latin,这是迄今为止的代码。

import java.util.*;

public class Start {

    static Scanner in = new Scanner(System.in);

    public static void main(String args[]){

        String input;

        System.out.println("What is your phrase?");
        input = in.next();
        convert(input);


    }//end main

    public static void convert(String in){

        String out;
        String[] inArry = in.split(" ");

        for(int i = 0; i < inArry.length; i++){

            System.out.println(inArry[i]);

        }


    }//end convert

}

如果我输入控制台&#34; Hello world n#34;它只打印Hello。我不知道为什么。

1 个答案:

答案 0 :(得分:6)

Scanner中的next()方法返回下一个标记,由一个默认为空格的分隔符标记。

  

扫描程序使用分隔符模式将其输入分解为标记,分隔符模式默认匹配空格。然后可以使用各种下一种方法将得到的标记转换为不同类型的值。

因此input仅为"Hello"

使用nextLine()方法来获取整行。

input = in.nextLine();