List<Integer> im =  new ArrayList<Integer>();
im.add(1);
im.add(2);
im.add(3);
Iterable<Integer> m = im.iterator();
while (m.hasNext())
{
int i = (Integer) m.next();
 System.out.println(i);
//下面
List<Integer> lstint = new ArrayList<Integer>();
lstint.add(1);
lstint.add(2);
lstint.add(3);// Iterator遍历一
Iterator<Integer> iterator = lstint.iterator();
while (iterator.hasNext())
{
int i = (Integer) iterator.next();
 System.out.println(i);
}

解决方案 »

  1.   

    Iterable和Iterator是两个不同的接口,iterator()方法返回的是Iterator类型,你当然要用Iterator类型的变量接收啊。好比我String a = 1;它肯定会报错,因为1是int类型,你String接收不了。
      

  2.   

    强转走一波不久可以了么
    List<Integer> im =  new ArrayList<Integer>();
            im.add(1);
            im.add(2);
            im.add(3);
            Iterator iterator = im.iterator();
            while(iterator.hasNext()){
                System.out.println(iterator.next());
        }