java集合框架(三)-视图与包装器

来源:互联网 发布:java两年经验工资多少 编辑:程序博客网 时间:2024/06/08 05:46

java学习记录之路
集合框架中的视图与包装器,接着上篇博客继续说。。。


http://blog.csdn.net/pacosonswjtu/article/details/50333509
首先我参考了上面这篇博客。里面介绍了视图的分类以及包装器。下面我补充一下里面没有的知识点。


先说对视图的理解:
java中的视图,可以说其实就是一个具有限制的集合对象,只不过这里的不是集合对象,而是一个视图对象。

集合视图就是把集合里面的东西给你展示出来。然后功能没有原始集合多。

是查看集合中部分或者全部数据的窗口。

对原集合的一层包装 ,不同的集合视图有不同的用途,有的是只读有的是同步的。针对视图的操作会影响到集合的数据。


介绍映射视图
映射有三种视图,键集,值集合,以及键/值对集。

java.util.MapSet<K>  keySet()//返回映射中所有键的一个视图集。可以从这个集中删除元素,键和相关联的值将从映射中删除,但是不能增加任何元素。Collection<V>   values()//返回映射中所有值的一个视图集。可以从这个集中删除元素,键和相关联的值将从映射中删除,但是不能增加任何元素Set<Map.Entry<K,V>> entrySet()//返回Map.Entry对象的一个视图集。可以从这个集中删除元素,它们将从映射中删除,但是不能增加任何元素。
java.util.Map.entryboolean equals(Object o)//Compares the specified object with this entry for equality.K   getKey()//Returns the key corresponding to this entry.V   getValue()//Returns the value corresponding to this entry.int hashCode()//Returns the hash code value for this map entry.V   setValue(V value)//将相关映射中的值改为新值,并返回原来的值。

我直接给出了api,首先要明白调用keySet(),返回的不是set集合,而是一个实现了Set接口的视图对象,不是集合对象。因为 Set扩展了Collection接口,所以可以像使用集合一样使用keySet

0 0
原创粉丝点击