您的位置:首页 > 编程语言 > Java开发

java集合——遗留的集合

2015-12-17 20:24 681 查看

【0】README

0.1) 本文描述转自 core java volume 1, 源代码为原创,旨在理解 java集合——遗留的集合 的相关知识;

0.2) for full source code , please visit https://github.com/pacosonTang/core-java-volume/blob/master/chapter13/LegacyTest.java

0.3) for detailed java.util.Properties class , please visit http://blog.csdn.net/PacosonSWJTU/article/details/50346443



【1】我们讨论java 问世以来就存在的集合类: Hashtable 和其非常有用的子类 Properties , Vector的子类 Stack 以及 BitSet类;

【2】Hashtable类(它与HashMap类的作用一样,Hashtable是同步的,HashMap是异步的)

1)Hashtable 的方法是同步的, 如果对同步性没有要求, 就应该使用 HashMap; (干货——Hashtable 与 HashMap 的区别)

【3】 枚举

3.1)遗留集合使用 Enumeration 接口对元素序列进行遍历, 它有两个方法: hasMoreElements 和 nextElement 方法;

3.2)看个荔枝:(Hashtable 类的 elements 方法将产生一个用于描述表中各个枚举值的对象)



3.3)静态方法 Collections.enumeration 将产生一个枚举对象, 枚举集合中的元素。 如:



【4】 属性映射表(Properties)

4.1)属性映射表是一个类型非常特殊的映射表结构, 有3个特性(Features): (干货——属性映射表Properties特性)

F1)键与值都是 字符串;

F2)表可以保存到一个文件中, 也可以从 文件中加载;

F3)使用一个默认的辅助表。

4.2)实现属性映射表的java平台 被称为 Properties;

4.3)属性映射表 通常用于程序的 特殊配置选项, 见第10章;

API java.util.Properties 1.0
Properties()
Properties(Properties defaults)
String getProperty(String key)
String getProperty(String key, String defaultValue)
void load(InputStream in)
void store(OutputStream out , String commentString)


【5】 栈(Stack)

5.1)标准类库中包含了 栈类(Stack): 而Stack 又扩展为 Vector类;

5.2)Vector类 并不太令人满意 (干货): 因为 它可以使用不属于 栈操作的 insert 和 remove 方法, 即可以在任何地方进行插入和删除操作, 而不仅仅在栈顶;

【6】 位集(BitSet)

6.1)java平台的 BitSet 类用于存放一个位序列 。 如果需要高效地存储位序列(例如标志)就可以使用位集。

6.2)由于位集将位包装在字节里, 所以,使用 位集要比使用 Boolean 对象的 ArrayList 更加有效;

6.3)看个荔枝(对于一个名为 bucketOfBits 的BitSet):

6.3.1)查看状态: bucketOfBits.get(i);

6.3.2)开启状态: bucketOfBits.set(i);

6.3.3)关闭状态: bucketOfBits.clear(i);

6.4)实际荔枝:(首先将所有位置设置为 开状态, 然后将已知素数的倍数所对应的位设置为 关状态, 结果这个操作保留下来的位对应的数就是 素数啦)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java