日期:2014-05-20  浏览次数:20681 次

数组和集合的区别
数组和集合有什么区别

------解决方案--------------------
数组就是同一种类型的存储(Object数组这种会丢失类型信息)
而且集合底层一般有两种实现方法,一种是数组,一种是链表
看用途,数组遍历快,插删慢。链表就反过来
一般能用集合就用集合,因为都优化过,比如不限长度可任意添加
还可以根据不同的环境使用不同优点的集合,比如有ArrayList,LinkedList都是List
各有优点,其它集合也是这样
所以看使用环境
------解决方案--------------------
数组Object[] vs 集合Collection<Object>
1.Collection是接口,实现这个接口的类有很多,常用的有List接口下的ArrayList,LinkedList等;Map接口下的有HashMap等,每个实现都是有最底层的链表、数组或其他实现。
2.例如ArrayList的底层实现就是Object[]。你可以通过打开ArrayList的类去看,有一些精妙的设计,比如HashMap的index的寻址算法等。
3.记忆底层实现比较划的来。