我的method.add(int)不会将用户输入添加到我的数组中

时间:2018-06-19 13:56:48

标签: java arraylist compiler-errors

我试图创建一个数组,要求用户输入其长度,然后要求用户一次将多个单词输入到数组中。但是我的代码句子.add(s);不会将我的“ S”变量添加到名为句子的ArrayList中。请您看看我的代码以查看我做错了什么。 EDIT 运行时,在输入数组长度后,程序会要求我输入一个单词,但立即 在下面的一行中用两个括号[]打印并在此处停止程序。如果有人知道为什么会这样,我将非常感激!

import java.util.Scanner;
import java.util.ArrayList;

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

        System.out.println("Enter an array length ");
        int lengthArray = scan.nextInt();

        ArrayList<String[]> sentences = new ArrayList<String[]>();

        for (int i=0; i <= lengthArray; i++); { 
            System.out.println("Please enter a word: "); 
            String s = scan.nextLine();
            sentences.add(s);
        }
        System.out.println(Arrays.toString(sentences));
    }
}

2 个答案:

答案 0 :(得分:8)

它不起作用,因为您声明了String []的ArrayList并尝试向其中添加一个String。

I.E。 if (attribute_value == '') { // means validation fail valid = false ; flashMessage(to_attribute) } if (valid) this.submit(); 应该是sentences类型的。

答案 1 :(得分:0)

我不知道您为什么将数组与ArrayList结合使用。 我怀疑您想要这样的东西:

//remove the "[]" here
ArrayList<String> sentences = new ArrayList<String>();
for (int i=0; i <= lengthArray; i++); { 
  System.out.println("Please enter a word: "); 
  String s = scan.nextLine();
  sentences.add(s);
}
//..and the Arrays.toString here
System.out.println(sentences);