黑马程序员技术交流社区

标题: 求解 [打印本页]

作者: 乔九    时间: 2012-10-31 23:49
标题: 求解
import java.util.*;
public class ListDemo1
{

        public static void main(String[] args)
        {
                ArrayList a1=new ArrayList();
                a1.add("java01");
                a1.add("java02");
                a1.add("java03");
                sop(a1);
                ListIterator li=a1.listIterator();
                while(li.hasNext())
                {
                        Object obj=li.next();
                        if(obj.equals("java02"))
                          li.add("java009");
                          
                }
                sop(a1);
                /*Iterator it=a1.iterator();
                while(it.hasNext())
                {
                        Object obj=it.next();
                        if(obj.equals("java02"));当有个分号时候没有报错反而输出[java01, java02, java03]
[java01, java009, java02, java009, java03, java009]

                                a1.add("java002");
                        sop("obj"+obj);
                }*/
               

        }
        public static void sop(Object obj)
        {
                System.out.println(obj);
        }

}

作者: 葛旭东    时间: 2012-11-1 09:58
  1. import java.util.*;
  2. public class ListDemo1
  3. {

  4.        public static void main(String[] args)
  5.        {
  6.                 ArrayList<String> a1=new ArrayList<String> ();
  7.                 a1.add("java01");
  8.                 a1.add("java02");
  9.                 a1.add("java03");
  10.                 sop(a1);
  11.                 ListIterator<String>  li=a1.listIterator();
  12.                 while(li.hasNext())
  13.                 {
  14.                         String str1 =li.next();
  15.                         if(str1.equals("java02"))
  16.                           li.add("java009");         
  17.                 }
  18.                 sop(a1);
  19.                
  20.                 Iterator<String>  it=a1.iterator();
  21.                 while(it.hasNext())
  22.                 {
  23.                         String str2=it.next();
  24.                         if(str2.equals("java02"))
  25.                                 it.remove();
  26.                         sop(str2);
  27.                 }  
  28.                 sop(a1);
  29.                
  30.        }
  31.         public static void sop(Object obj)
  32.         {
  33.                 System.out.println(obj);
  34.         }

  35. }
复制代码
Iterator没有add方法,在迭代时不允许添加元素,仅可以用remove方法。  

作者: xuchulong1    时间: 2012-11-1 10:17
加了一个  ;   就相当于加了一条空语句,那就是说if语句其实没有起到任何作用,所以你的 009  加进去了三次,而且你的分号应该是加在上面的这个while里的吧??你可以这样去看一下是不是对了。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2