java Collections Framework

一、在java collections freamwork中,ArrayList是最常用的,但还是会有特殊情况,下面列出几个较为重要的:
1.TreeSet
以有序状态保持并可以防止重复。
2.HashMap
可用成对的name/value来保存取出。
3.LinkedList
针对经常插入和删除中间元素所设计的高效率集合。
4.HashSet
防止重复的集合,可快速找寻相符的元素。
5.LinkedHashMap
类似于HashMap,但可记住元素插入顺序,也可以设定为依照上次元素存取的先后来排序。
二、泛型
在没有泛型出现之前,各种对象以引用的形式加入到ArrayList中,出来时会是Object类型的引用。
这里写图片描述
泛型出现以后,ArrayList变为ArrayList,仅有Fish对象能以引用形式加入到ArrayList中,出来的还是Fish对象的引用。这里写图片描述
如图,加上泛型之后,你只能将Fish对象的引用加入到ArrayList,不能把非Fish对象的引用也放进去,因此取出来时也只会是Fish引用。
泛型好处:运用泛型我们可以创建类型安全更好的集合,让问题尽可能在编译期就能抓到,而不会等到执行期才冒出来。
有一句开玩笑又极具风趣的话来形容:如果没有泛型,编译器会很 愉快地接受你把绵羊对象送入到一个老虎的集合。哈哈^_^。。。
三、运用泛型的方法
泛型的类代表类的声明用到类型参数。
泛型的方法代表方法的声明特征用到类型参数。
1.使用定义在类声明的类型参数

public class ArrayList<E> extends AbstractList<E>...{
    public boolean add(E o)
    ... 

2.使用未定义在类声明的类型参数

public <T extends Animal> void takeThing(ArrayList<T> list)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值