黑马程序员技术交流社区

标题: 今天学的代码各位大神帮看看 [打印本页]

作者: 楼夜雪    时间: 2015-9-29 21:29
标题: 今天学的代码各位大神帮看看
package mayjava.day14_pratice;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class IteratorTest {
        public static void main(String[] args) {
                //Collection为接口 无法直接创建对象,所以创建一个子类对象
                Collection c=new ArrayList();
                c.add("hello");
                c.add("java");
                c.add("I");
                c.add("love");
                c.add("java");
                //使用迭代遍历数组
                // hasNest()判断是否还有元素,next()获取下一个元素
                //iterator是Collection的一个方法同时也是一个接口
                //专门用来实现遍历的接口,
//                所以可以用Collection创建的子类对象调用iterator()
//                来赋值给 Iterator 创建的对象
                Iterator it=c.iterator();
                //可以直接拿c.iterator去调用Iterator接口的方法
                //然后用it来调用iterator的方法实现遍历
                //用while循环
                while (it.hasNext()) {//判断是否有下一个元素
//it调用函数next();在这里获得的是一个字符串对象无法直接打印
        //        必须转成字符串类型,使用(String)强转,因为已经明确知道是String       
        //用一个String类型接收
                        String s=(String)it.next();
                        System.out.println(s);
                               
                               
                }
               
        }
}
看看我对这些的理解怎么样,没有理解错了吧
作者: syusouki    时间: 2015-9-29 21:48
理解的不错,挺好的,没问题
作者: 921    时间: 2015-9-29 22:03
ArrayList实现了Iterable接口中的方法,所以可以调用iterator()方法返回Iterator的迭代器对象,这是一个接口,再使用这个接口中的取出元素的方法来进行遍历删除的操作,具体可以看api文档.
作者: 王贺明    时间: 2015-9-29 23:14
看起来高大上,完全不懂




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