如何在Java中将Scanner输入添加到数组中?

时间:2014-02-20 03:46:37

标签: java arrays string java.util.scanner

我正在编写一个程序,用户将输入句子串(每行一行),我必须将它添加到两个10个单元格的String数组中。

例如(用户输入):

line1
line2

line3
line4

Line1和line2将附加到第一个数组。在识别出空白行之后,第2行和第2行将被附加到第二个数组。每一行都是一个新细胞。

String[] firstArray = new String[10];
String[] secondArray = new String[10];

我坚持使用此用户输入并成功将其添加到阵列。我一直得到奇怪的结果,扫描仪持续10或11次,并且在第二组输入后没有停止。

到目前为止,我的代码如下所示,我还没有创建第二个数组,并在空行后找出要做的事情:

public static void stringStream(Scanner sc) {
    String[] firstArray = new String[10];
    boolean streamEnded = false;
    int index = 0;
    while (!streamEnded && sc.hasNextLine()) {
        String sentence = sc.nextLine();
        if (sentence.length() == 0) {
            streamEnded = true;
        } else {
            firstArray[index] = sc.nextLine();
            index++;
    for (int i = 0; i < firstArray.length-1; i++) {
        String words = firstArray[i];
        if(words != null) {
            System.out.println(words);

1 个答案:

答案 0 :(得分:0)

如果您使用的是Scanner(System.in)

import java.util.*;

Scanner in = new Scanner(System.in);
for (int i = 0; i < 10; i ++)
{
     firstArray[i] = in.nextLine();
}

你可以为第二个数组做同样的事情