Collection 集合记录

* 单值操作接口:Collection、List、Set
   |-List、Set是Collection接口的子接口
*-对值的操作接口:Map
*排序的操作接口:SortedMap、SortedSet
*输出的接口:Iterator、ListIterator、Enumeration
*队列:Queue


Collection 集合输出有4种方式
   Iterator       --->有迭代接口
   ListIterator  ----->双向的输出---可以向前向后输出
   foreach  --> 对于数组、集合同样适用
   Enumeration ---> 只支持Vector类,古老的输出接口

Set依靠hashCode和equals()方法区分
TreeSet按照Comparable接口指定的规则进行排序
Map是保存一对值的集合,所有的内容都是以MapEntry的形式保存的。
集合输出要使用Itarator接口,进行迭代输出
属性操作使用Properties类完成

Map 接口保存的内容是一对值 Key,Value
常用三个子类---->HashMap,Hashable,TreeMap
HashMap--->不能存在重复值,Key不能重复       ---采用异步处理,性能高,非线程安全的操作
Hashtable--->与Vector产生时代一样,实现了Map接口  ---采用同步的处理,性能相对较低,线程安全
TreeMap---->可以按照KEY的方式进行排序

给定任意一个类进行排序,必须实现Comparable接口
注意一:  Map不能直接使用Iterator输出;在Map中真正保存的还是一个单独的对象,在放入集合里。
Interface Map.Entry<k,v>  此接口属于Static声明的接口,还是内部接口 .
1.Set<Map Entry<K,V>> entrySet()方法获得Set集合
2.通过Set接口为Iterator进行初始化的操作
3.通过Iterator取出每一个Map.Entry
4.通过Map.Entry进行key与value的分离
另用foreach也可以输出
注意二:使用非系统类作为Key
在Map中可以使用匿名对象找到一个key对应的值
Map<String,Person> map = new HashMap<String,Person>();
map.get();map.put();

其他子类IdentityHashMap
默认情况下,一个Map集合中key是不能重复的,然而通过这个类加入的内容,如果对象的地址不相等,则认为不是同一个对象,可以重复。(只有在两个对象在执行"=="操作的时候不相等才认为不是两个相同的对象)

例1.

例2.

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值