Ich habe eine Klasse UserGroup, die eine ArrayList userList hat. Ich mache eine erste Instanz der Klasse namens "myUserGroup" und fülle sie mit 10 Elementen, dann mache ich eine zweite namens "Administratoren". Ich möchte die 'myUserGroup' Arraylist durchlaufen und wenn das Element gleich "admin" ist, füge es der 'administrator'-Arraylist hinzu.Java - Wie man durch eine Objekt-Arraylist iteriert und Elemente, die eine bestimmte Bedingung erfüllen, zu einer anderen Objekt-Arraylist
Hier ist die Usergroup Klasse:
public class UserGroup {
ArrayList<User> userList;
UserGroup(){
userList = new ArrayList<User>();
public Iterator<User> getUserIterator() {
Iterator<User> iterate = userList.iterator();
return iterate;
}
Hier ist die Klasse, in der ich versuche, um die Elemente der 2. Usergroup Arraylist hinzuzufügen:
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());
}
}
Anruf .next() nur einmal innerhalb der Schleife. –