关于集合框架的学习

对于java而言,数组这种内存长度定死的盒子,很多时候不能满足人们的需要,此时就引入了一个框架---集合。

Collection作为单列集合的父类,其下一般有set和list两种集合,我们常见的集合就是他们的实现类,hashset和ArrayList 还有LinkedList,父类Collection中有add(),remove(),clear(),contains(),isEmpty(),size(),toArray以及迭代器iterator()等常见的方法,可以对集合进行,增加数据,删除数据,查找数据,查看集合长度,遍历集合,以及把集合转换成数组的方法。

在list下有两个常用的实现类,ArrayList 和 LinkedList,ArrarList是的,不唯一的集合,插入的数据按下标排列,是连续的,也可以按照下标查数据,底层是一个数组,LinkedList底层是一个收尾相连的链表,有独特的方法addFirst(),Last(),可以向集合的第一个和最后一个位置插入数据,ArrayList查询快,增删慢,LinkedList查询慢,增删快,但是两个都是不唯一的,所以有时会有重复数据,Set集合是一个无序,唯一的集合,所有存进去的值,在存之前都会对哈希值进行匹配,当哈希值不同时,添加数据,如果哈希值一样时,再进行一次equals()比较,如果equals()得到一样了,那就不存储,如果不一样,那就说明不是一个对象,就进行存储,两重比较,确保了数据的唯一性,set集合因为是无序的所有不能通过下标索引,只能迭代器遍历打印出来。

双链集合的父类是Map,其中常用的叫HashMap,Map包含两组数据,一组key,一组value,对于Map而言,是一组链路,key不能重复,一个key只能映射一个value,所以存值的时候和HashSet一样,需要用到HashCode()和equals进行比较去重。

HashMap一般能用到的方法有put(),get(),clear(),remove(),entryset(),setKey(),这两个方法都是返回一个set集合,用来对map集合进行遍历。

对于集合而言,添加数据有list和set的add方法,map的put方法,遍历可以用到list/set/map的iterator迭代器,在while中调用iterator的hasNext()和next().

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值