31、%1、+''%1 的区别。
+, 主要用于存储健值对,根据键得到值,因此不允许键重复<重复了覆盖了=J但允许值重
复。
E,是一个最常用的 +,J它根据键的 0 值存储数据J根据键可以直接获
取它的值,具有很快的访问速度,遍历时,取得数据的顺序是完全随机的。+, 最
多只允许一条记录的键为 >U允许多条记录的值为 >U+, 不支持线程的同步,
即任一时刻可以有多个线程同时写 +,U可能会导致数据的不一致。如果需要同步,
可以用 0 的 #9 +, 方法使 +, 具有同步的能力,或者使用
0+,。
与 +, 类似J它继承自 ;# 类,不同的是V它不允许记录的键或
者值为空U它支持线程的同步,即任一时刻只有一个线程能写 J因此也导致了
在写入时会比较慢。
$% +, 保存了记录的插入顺序,在用 6 遍历 $% +, 时,先得
到的记录肯定是先插入的也可以在构造时用带参数,按照应用次数排序。在遍历的时候会
比 +, 慢,不过有种情况例外,当 +, 容量很大,实际数据较少时,遍历起
来可能会比 $% +, 慢,因为 $% +, 的遍历速度只和实际数据有关,
和容量无关,而 +, 的遍历速度和他的容量有关。
/+, 实现 +, 接口,能够把它保存的记录根据键排序J默认是按键值的升序排序,
也可以指定排序的比较器,当用 6遍历 /+, 时,得到的记录是排过序的。
一般情况下,我们用的最多的是 +,J+, 里面存入的键值对在取出的时候是
随机的J它根据键的 0 值存储数据J根据键可以直接获取它的值,具有很快的访问
速度。在 +,中插入、删除和定位元素,+,是最好的选择。
/+, 取出来的是排序后的键值对。但如果您要按自然顺序或自定义顺序遍历键,那么
/+, 会更好。
$% +,是 +, 的一个子类,如果需要输出的顺序和输入的相同J那么用
$% +, 可以实现J它还可以按读取顺序来排列,像连接池中可以应用。
3&5& 包结构,与 &5& 的区别。
<=0是一个集合接口。它提供了对集合对象进行基本操作的通用接口
方法。0 接口在 类库中有很多具体的实现。0 接口的意义是为各
种具体的集合提供了最大化的统一操作方式。
0
R$
SR$% $
SR"#$
ST&
S └%