我有一个UserGroup类,它有一个ArrayList userList。我创建了一个名为' myUserGroup'的类的第一个实例。并填写10个元素然后我做第二个叫“管理员”#39;我想遍历' myUserGroup' arraylist如果元素等于" admin"将其添加到'管理员'数组列表。
这是UserGroup类:
public class UserGroup {
ArrayList<User> userList;
UserGroup(){
userList = new ArrayList<User>();
public Iterator<User> getUserIterator() {
Iterator<User> iterate = userList.iterator();
return iterate;
}
这是我试图将元素添加到第二个UserGroup arraylist的类:
public class Main {
public static void main(String[] args) {
UserGroup myUserGroup = new UserGroup();
myUserGroup.addSampleData();
UserGroup administrators = new UserGroup();
while(myUserGroup.getUserIterator().hasNext()) {
if(myUserGroup.getUserIterator().next().getUserType().equals("admin")) {
administrators.userList.add(myUserGroup.getUserIterator().next());
}
}
答案 0 :(得分:1)
一些问题:
next()
两次,得到两个
后续的对象。尝试使用此而不是while循环:
for (User u : myUserGroup.userList) {
if (u.getUserType().equals("admin")) {
administrators.userList.add(u);
}
}