一、定义
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)来定制你的自定义类。
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦