Я пытаюсь зациклиться на группе людей, и для каждого человека я получаю друзей. Затем пройдите через друзей и для каждого друга заведите своих друзей и вызовите метод под названием groupPeople(). Но я получаю ConcurrentModificationException. Любая идея почему?ConcurrentModificationException и не знаю почему?
for (User user : this.groupA) {
Set<User> listofFriends = user.getFriends();
Iterator<User> iterator = listofFriends.iterator();
while(iterator.hasNext()) {
User setElement = iterator.next();
Set<User> listofFriends2 = setElement.getFriends();
groupPeople(listofFriends2,10);
}
}
private void groupPeople(Set<User> group,int number) {
for (User user : group) {
int y = 0;
while(y<number){
user.addFriend(socialNetwork.getPeopleInNetwork().get(++counter));
y++;
}
}
}
Сообщение об исключении:
Exception in thread "main" java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextEntry(HashMap.java:922)
at java.util.HashMap$KeyIterator.next(HashMap.java:956)
Что это такое за стекловидность и какая линия? –
в строке User setElement = iterator.next(); –
Исключение в потоке "основного" java.util.ConcurrentModificationException \t в java.util.HashMap $ HashIterator.nextEntry (HashMap.java:922) \t в java.util.HashMap $ KeyIterator.next (HashMap.java:956) –