A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

A:案例演示
需求:我有一个集合,请问,我想判断里面有没有"world"这个元素,如果有,我就添加一个"javaee"元素,请写代码实现。package com.heima.list;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;

public class Demo3_List {


        public static void main(String[] args) {
                List list = new ArrayList();

                list.add("hello");
                list.add("world");
                list.add("java");
       
                Iterator i =list.iterator();
                while (i.hasNext()) {
                        String s = (String)i.next();
                        if ("world".equals(s)) {
                                list.add("javaee");
                        }
                }
                System.out.println(list);
                               
        }
}

上边是不行的,会出现Exception in thread "main" java.util.ConcurrentModificationException
要把Iterator方法换成,用listIterator的方法来添加元素
ListIterator lis = list.listIterator();
                while (lis.hasNext()) {
                        String s = (String)lis.next();
                        if ("world".equals(s)) {
                                lis.add("javaee");
                        }
                }

评分

参与人数 3黑马币 +54 收起 理由
寒若冰 + 30 很给力!
K_LONG + 14 赞一个! 解决了我的问题 ~~
ZhengJX + 10 当时做的时候还以为哪写错了。。。.

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马