继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

数组与集合的区别

桃花长相依
关注TA
已关注
手记 113
粉丝 15
获赞 56

一、定义

1.数组:数组的大小是固定的,并且只能存放同一种类型的数据(基本类型数据或引用类型数据);

2.集合:可以对数据数量不固定的数组进行存储和操作。如果程序中不清楚到底有多少对象,需要在容量不足的时候进行自动扩充,则需要使用集合,而不选择数组。

3.联系:可以通过相应的toArray和Arrays.asList()方法进行相互转换。

二、集合的接口区别

1.List:有序,元素可重复

ArrayList、LinkedList和Vector是三个主要的实现类。ArrayList是线程不安全的, Vector 是线程安全的,这两个类底层都是由数组实现的LinkedList是线程不安全的,底层是由链表实现的。

2.Set:元素不可重复

HashSet和TreeSet是两个主要的实现类。Set 只能通过游标来取值,并且值是不能重复的。

3.Map: 键值对集合

其中key列就是一个集合,key不能重复,但是value可以重复。HashMap、TreeMap和Hashtable是Map的三个主要的实现类。HashTable是线程安全的,不能存储 null 值;HashMap不是线程安全的,可以存储 null 值。

三、List与ArrayList的区别

1.List是接口,List特性就是有序,会确保以一定的顺序保存元素;

   ArrayList是它的实现类,是一个用数组实现的List。

2.如果在开发的时候觉得ArrayList,HashMap的性能不能满足你的需要,可以通过实现List,Map(或者Collection)来定制你的自定义类。

原文链接:http://www.apkbus.com/blog-815579-60838.html

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP