访问由ArrayList Java创建的对象构造函数

访问由ArrayList Java创建的对象构造函数,java,object,arraylist,scope,Java,Object,Arraylist,Scope,我正在做一个项目,需要在类的构造函数中创建一个ArrayList。我这样做是为了: ArrayList<Users> grouping; public userGroup(){ grouping = new ArrayList<Users>(); } 但是我现在需要从Main.java访问ArrayList, 像这样: /*Last Item in administrators Object's ArrayList*/.setUserType

我正在做一个项目,需要在类的构造函数中创建一个ArrayList。我这样做是为了:

ArrayList<Users> grouping;
public userGroup(){
grouping = new ArrayList<Users>();      
}
但是我现在需要从Main.java访问ArrayList, 像这样:

        /*Last Item in administrators Object's ArrayList*/.setUserType("user");
我不知道怎么做。。 我试过了

administrators.grouping.setUserType("user");

但是不知道下一步要尝试什么。

管理员。分组将给出列表。如果要从中访问元素,需要先获取它,然后才能对其调用
setUserType

administrators.grouping.get(i).setUserType("user");
其中
i
是要从列表中删除的元素的索引

另外-封装类的字段是一种很好的做法,也就是说,不要直接访问字段,而是将其设置为private并添加getter方法:

public class UserGroup {
 private List<Users> grouping;
 public userGroup(){
  grouping = new ArrayList<Users>();      
 }
 public ArrayList<Users> getGrouping() {
  return this.grouping; // changed l to ;
 }
}

您应该为分组字段编写getter

class UserGroup {
   ArrayList<Users> grouping;

   public UserGroup(){
       grouping = new ArrayList<Users>();      
    }

   public ArrayList<Users> getGrouping() {
      return this.grouping;
  }
}

如果要在列表的最后一个元素上调用该方法,则它将是
administrators.grouping.get(administrators.grouping.size()-1).setUserType(“用户”)
那么我可以使用int I=administrators.getGrouping().size()获取最后一个元素吗;administrators.getGrouping().get(i).setUserType(“用户”)@TaylorMudd-
i
应该是大小减1-记住索引从0开始
administrators.getGrouping().get(i).setUserType("user");
class UserGroup {
   ArrayList<Users> grouping;

   public UserGroup(){
       grouping = new ArrayList<Users>();      
    }

   public ArrayList<Users> getGrouping() {
      return this.grouping;
  }
}
UserGroup administrators = new UserGroup();
int size = administrators.getGrouping().size();
// I recommend you to check if size is not 0 here
administrators.getGrouping().get(size - 1).setUserType("user");