将字符串添加到ArrayList

时间:2013-08-12 12:12:13

标签: java string arraylist

请帮忙。我不能让这个工作:

List<AddNewClientSaveAction> data = new ArrayList<AddNewClientSaveAction>();
// AddNewClientSaveAction is a class that collects user input from a number of JTextField values
String line;
            final String lastEntryClient = "LAST_ENTRY";

            while ((line = br.readLine()) != null) {
                if (line.startsWith(lastEntryClient)) {
                    data.add(lastEntryClient);
                }
            }

我正在尝试将字符串'lastEntryClient'添加到ArayList'数据'中,但我不断收到代码错误。

很抱歉,如果它太明显了。我是JAVA的新手。

4 个答案:

答案 0 :(得分:3)

如果您将列表声明为

 ArrayList data = new ArrayList();

然后您会收到有关参数化列表的消息,因为数据可以包含任何Object

如果您知道要在列表中仅添加字符串,请将其声明为

 ArrayList<String> data = new ArrayList<String>(); // pre java 7
 ArrayList<String> data = new ArrayList<>(); // valid for java 7

答案 1 :(得分:2)

你可以做这样的事情

   List<String> data = new ArrayList<>();// this is for java 7 and won't compile in previous versions.

    while ((line = br.readLine()) != null) {
        if (line.startsWith(lastEntryClient)) {
            data.add(line);
        }
    }

List<String> data = new ArrayList<String>()用于java 7之前的版本

答案 2 :(得分:1)

什么是AddNewClientSaveAction?通过使用它,您将创建一个准备接受该特定类的对象的列表。但是您正在尝试将String对象传递给它。你真的想要哪一个?

听起来你想要一个String类型列表:

List<String> data = new ArrayList<String>();

或者,不是向它添加String对象,而是添加AddNewClientSaveAction类中的内容。如果不了解更多关于代码的信息,很难知道你想要的是什么。

答案 3 :(得分:0)

这会将String添加到数组列表中:

ArrayList list = new ArrayList();
list.add("hello");
System.out.println(list);