you question is the flow code
public static void main(String[] args) {
List<Integer> integerList = new ArrayList<>();
integerList.add(1);
integerList.add(2);
for (Integer integer : integerList) {
integerList.add(3);
}
}
the error is that
Exception in thread "main" java.util.ConcurrentModificationException
at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:907)
at java.util.ArrayList$Itr.next(ArrayList.java:857)
at com.test.TestList.main(TestList.java:28)
we could use ListIterator to add the value.The code is this
package com.test;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
/**
*
*
*
*
* @author shikai.liu
* @version 1.0
* @since JDK1.7
*/
public class TestList {
public static void main(String[] args) {
List<Integer> integerList = new ArrayList<>();
integerList.add(1);
integerList.add(2);
// for (Integer integer : integerList) {
// integerList.add(3);
// }
ListIterator<Integer> integerIterator = integerList.listIterator();
while (integerIterator.hasNext()) {
Integer integer = integerIterator.next();
if (integer == 1)
integerIterator.add(5);
}
}
}
so your code is like that
ListIterator<Article> integerIterator = articleList.listIterator();
while (integerIterator.hasNext()) {
Article a = integerIterator.next();
String checkId = "select * from article";
PreparedStatement ps = conn.prepareStatement(checkId);
ResultSet rs = ps.executeQuery(checkId);
rs.next();
if(a.getId()==rs.getInt("id")){
//Here i'm returning list, just like it is in DataBase.
} else{
//integerIterator.add()
//Here i want to add articles in the list
}
}