添加到ArrayList构造函数

时间:2013-10-30 01:48:45

标签: java methods arraylist constructor add

我有一个关于ArrayLists的问题,我似乎无法理解这个概念。基本上我是在没有构造函数中的main方法的情况下创建一个ArrayList。我需要在我的ArrayList中添加多个“用户”,我似乎无法找到一种方法。

package lab4;

import java.util.ArrayList;

public class UserGroupz{

private ArrayList<User> users;

    public UserGroupz(){
        users = new ArrayList<User>();
    }

        //MY PROBLEM IS IN THIS METHOD BELOW!
    public void addSampleData(User user){
        users.add(user);
    }



    public int numberOfUsers(){
        return users.size();
    }

    public void printUsernames(int userNumber){
        if(userNumber < 0){ 
        }
        else if(userNumber < numberOfUsers()){
            System.out.println(users.get(3));
        }
        else{
        }
    }
    public void listUsers(){
        for(User allUsers : users){   
            System.out.println(allUsers);
        }
    }

}

2 个答案:

答案 0 :(得分:1)

如果您的问题是反复调用addSampleData()来添加用户,而您希望一次添加多个用户,那么您可以使用ArrayList#addAll()方法添加其他集合中的所有元素进入你的ArrayList

  

public boolean addAll(Collection c)

     

将指定集合中的所有元素追加到末尾   此列表,按指定的返回顺序排列   集合的迭代器。如果,则此操作的行为未定义   操作进入时修改指定的集合   进展。 (这意味着如果这个调用的行为是未定义的   指定的集合是此列表,此列表是非空的。)

要执行此操作,您需要将所有用户整理到另一个ArrayList,然后将其作为参数传递给addSampleData(),该addAll调用主ArrayList <的{{1}}方法/ p>

答案 1 :(得分:0)

在main中,您创建一个UserGroupz对象,

   UserGroupz ugz = new UserGroupz();
   ugz.addSampleData(user);
   ugz.listUsers();