Chinaunix

标题: 整理Iterator的使用 [打印本页]

作者: hkebao    时间: 2009-09-23 19:08
标题: 整理Iterator的使用
我们在使用JAVA内置的数据结构的时候不得不提到这个家伙。经常见好现在分析一下这个家伙便于以后的使用!
1. 使用Iterator实现遍历集合
不管我们的集合对象是数组Array 还是List等。我们可以将遍历其的方法进行抽象出来统一走一种方法即可!
这样的好处就是程序员没有必要知道我写的复杂数据结构是如何实现的!
统一方式:for(Iterator it = c.iterater();it.hasNext();) {}
我们程序员没有必要去了解这个遍历背后的故事。由Iterator统一使用!
        Map map = new HashMap();
        map.put("title", "test");   得到了一个集合对象了现在需要进行遍历
        for (java.util.Iterator it = map.keySet().iterator(); it.hasNext();) {
            String columnName = it.next().toString();
            System.out.print(map.get(columnName));
        }
其中c表示的是集合对象名称!
保证的一点:客户端的程序员没有必要去关注我系统内部的集合类结构。如果想要用就直接通过Iterator进行控制前一步、下一步、这样的操作即可!
典型代码:
for(Iterator it = c.iterater();it.hasNext()) {     Object o = it.next();}
这句话看各位是如何体会的:
集合类返回的Itrator的具体类型可能会不同。Array可能返回的是ArrayIterator SET可能是返回其他的类型的。但是它们都要实现统一的接口。因此客户端不管实现哪种Iterator只需要实现接口即可!
这样的一个好处就是:避免后端的复杂实现方式,只需要处理接口即可!
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/84280/showart_2058653.html




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2