黑马程序员技术交流社区
标题:
关于集合的迭代
[打印本页]
作者:
黑马不黑
时间:
2014-1-13 10:09
标题:
关于集合的迭代
一般对集合Set、List的迭代方法有继承Iterator类、Enumeration、foreache,是不是所有的集合都可以用这三个方法啊?Verctor集合呢?还有Map是不是比较特殊啊?
作者:
xu6148152
时间:
2014-1-13 10:13
本帖最后由 xu6148152 于 2014-1-13 10:21 编辑
Iterator也是使用指针的思想,只不过更安全。vector可以用.。但是
“Vector非常类似ArrayList,都是继续List接口(List接口是继续
Collection接口
),但是Vector是同步的。由Vector创建的Iterator,虽然和ArrayList创建的Iterator是同一接口,但是,因为Vector是同步的,当一个Iterator被创建而且正在被使用,另一个线程改变了Vector的状态(例如,添加或删除了一些元素),这时调用Iterator的方法时将抛出ConcurrentModificationException,因此必须捕获该异常。”map的用法如下
package test;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
import java.util.Map;
import java.util.Set;
import java.util.SortedSet;
import java.util.TreeSet;
public class test {
public static void main(String[] args) {
Map<String,String> map=new HashMap<String,String>();
map.put("Zhukai","is_a_2HUO!");
map.put("LiJunDong","is_a_2HUO_too!");
map.put("WoZiji","is_not_2HUO!");
Set<Map.Entry<String, String>> allSet=map.entrySet();
Iterator<Map.Entry<String, String>> iter=allSet.iterator();
while(iter.hasNext()){
Map.Entry<String, String> me=iter.next();
System.out.println(me.getKey()+ " "+me.getValue());
}
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2