Collection接口和Iterator接口

在Collection接口中声明了适用于java集合(只包含Set和List)的通用方法:

方法

描述

Boolean add(Object o)

向集合中添加一个对象的引用

Void clear()

删除集合中的所有对象,即不再持有这些对象的引用

Boolean contains(Object o)

判断在集合中是否持有特定对象的引用

Boolean isEmpty()

判断集合是否为空

Iterator iterator()

返回一个Iterator对象,可用它来遍历集合中的元素

Boolean remove(Object o)

从集合中删除一个对象的引用

Int size()

返回集合中元素的数目

Object[] toArray()

返回一个数组,该数组包含集合中的所有元素

Set接口和list接口都继承了Collection接口,而map接口没有继承Collection接口,因此可以对set对象和list对象调用以上方法,但是不能对Map对象调用以上方法。

 

Collection接口的iterator()和toArray()方法都用于获取集合中的所有元素,前者返回一个Iterator对象,后者放回一个包含集合中所有元素的数组。

 

Iterator接口中声明了如下方法:

l  hasNext() 判断集合中的元素是否遍历完毕,如果没有,就返回true

l  next()  返回下一个元素

l  remove() 从集合中删除一个由next()方法返回的元素

package org.shw.collection;

 

import java.util.ArrayList;

import java.util.Collection;

import java.util.HashMap;

import java.util.HashSet;

import java.util.Iterator;

import java.util.List;

import java.util.Map;

import java.util.Set;

 

public class Visitor {

   

    public static void print(Collection<? extends Object> c){

       Iterator<? extends Object> it=c.iterator();

       while(it.hasNext()){

           Object element = it.next();

           System.out.println(element);

       }

    }

 

    public static void main(String[] args) {

       Set<String> set = new HashSet<String>();

       set.add("Tom");

       set.add("Mary");

       set.add("Jack");

       print(set);

      

       List<String> list = new ArrayList<String>();

       list.add("Linda");

       list.add("Mary");

       list.add("Rose");

       print(list);

      

       Map<String,String> map = new HashMap<String,String>();

       map.put("M", "男");

       map.put("F", "女");

       print(map.entrySet());

      

      

    }

 

}

 

 

entrySet Set<Map.Entry<K,V>> entrySet():

返回此映射中包含的映射关系的 Set 视图。该 set 受映射支持,所以对映射的更改可在此 set 中反映出来,反之亦然。如果对该 set 进行迭代的同时修改了映射(通过迭代器自己的 remove 操作,或者通过对迭代器返回的映射项执行 setValue 操作除外),则迭代结果是不确定的。set 支持元素移除,通过 Iterator.remove、Set.remove、removeAll、retainAll 和 clear 操作可从映射中移除相应的映射关系。它不支持 add 或 addAll 操作。

 

返回:

此映射中包含的映射关系的 set 视图

 

 

posted @ 2012-03-05 23:54  haiwei.sun  阅读(690)  评论(0编辑  收藏  举报
返回顶部