Java's for loop delete and add

java 之 for

Comparison of several commonly used for loops to delete and add data:

  List<Integer> list = new ArrayList<>();
        list.add(1);
        list.add(2);
        list.add(3);

 

The first: concurrent operations, need to lock the Iterator object.

Iterator<Integer> iterator = list.iterator();
        while (iterator.hasNext()) {
            Integer i = iterator.next();
            if(i == 2) {
                iterator.remove();
            }
           
        }

 

The second:

What happens when you replace 2 with 3

for (Integer i : list) {
            if(i == 2) {
                list.remove(i);
            }

}

 

Do you think that is better?

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326234843&siteId=291194637