Java容器一.总览

2018-06-08  本文已影响0人  stoneyang94

概览

容器主要包括 Collection 和 Map 两种,Collection 又包含了 List、Set 以及 Queue。

绿色表示接口;红色表示常用的类

基本概念

Java容器类类库的用途是持有对象

  1. Collection
    一个独立元素的序列,这些元素都服从一条或多条规则。其中List必须按照插入的顺序保存元素、Set不能有重复的元素、Queue按照排队规则来确定对象的产生顺序(通常也是和插入顺序相同)
  2. Map
    一组成对的值键对对象,允许用键来查找值。Map允许我们使用一个对象来查找某个对象
  3. Iterator
    Iterator是对迭代器模式的抽象,基本方法包括:
方法 作用
hasNext() 判断是否有下一个元素
next() 获取下一个元素
remove() 删除本元素

Collection框架中的所有集合类都实现了其对应的Iterator,其中只有List接口的实现类能安全使用remove()方法,别的实现类会抛出ConcurrentModificationException异常

Collection

List

Set

Queue

Map

散列

hasCode() 返回散列值,使用的是对象的地址。

而 equals() 是用来判断两个对象是否相等的,相等的两个对象散列值一定要相同,但是散列值相同的两个对象不一定相等。

相等必须满足以下五个性质:

  1. 自反性
x.equals(x); // true
  1. 对称性
x.equals(y) == y.equals(x) // true
  1. 传递性
if(x.equals(y) && y.equals(z)) {
    x.equals(z); // true;
}
  1. 一致性

多次调用 equals() 方法结果不变

x.equals(y) == x.equals(y); // true
  1. 与 null 的比较

对任何不是 null 的对象 x 调用 x.equals(null) 结果都为 false

x.euqals(null); // false;
上一篇下一篇

猜你喜欢

热点阅读