现在的位置: 首页 > 综合 > 正文

java集合类

2013年03月02日 ⁄ 综合 ⁄ 共 1076字 ⁄ 字号 评论关闭

对象的克隆:

1.为了获取对象的一份拷贝,我们可以利用Object类的clone()方法2.在派生类中覆盖基类的clone()方法,并声明为public。3.在派生类的clone()方法中,调用super.clone()。4.在派生类中实现Cloneable接口。


集合类

程序=数据结构+算法,Collection类将常用的数据结构和算法形成一个叫做Collection的包。Collection包将接口和实现分开,里面有许多的类,分成了数据储存有无顺序,是否可以重复。
Collection主要的接口有:
Lists:实现该类必须有顺序的对象的集合。
Set:Set集合中不容许有重复的对象。
Map:提供对象到对象的映射。
Iteractors:提供遍历对象的方法。
常用类有ArrayList、Vector、LinkedList、Stack、HashSet、TreeSet、HashMap、TreeMap。

ArrayList的功能:提供动态增长的具有数组功能的集合类。方法有添加,设置,移除,获取对象等。在需要遍历数组时需要返回一个Iterator对象来实现遍历。ArrayListDemo.java。不是线程安全。for(Iterator i=arrayList.iterator();i.hasNext();){Iterator iterator =(Iterator)i.next();}

Vector的功能:与ArrayList类似。方法都是同步(可以支持多线程而不出问题)。

LinkedList的功能:提供与ArrayList相类似的功能,不过其底层实现不同,比如说队列(FIFO先进先出)、栈都可以基于LinkedList实现。

Stack的功能:继承了Vector类,在此基础上实现栈结构(后进先出),主要方法:push、pop、peek。push方法是将对象压入栈中,再用pop将其去取出,peek是获取对象而不将其从栈中删除。

HashSet实现了接口Set,里面不能存放同样的对象,但是是无序的。例HashDemo。

TreeSet和HashSet差不多,不过底层实现不同,HashSet是基于HashTable实现,TreeSet是基于Tree树状结构。具体使用看情况。

HashMap提供了关键字对象到值对象的映射。

总结:java的collection将接口和实现分开,更灵活。我们可以从书上非常清晰的看出Iterator在for循环中的用法,一个套路。方法层面其实差不多,不同的就是底层的是实现。



还有许多,暂时收集这多,明天需要再次回顾这些知识点!!!



抱歉!评论已关闭.