java collection源码_jdk源码阅读Collection详解

见过一句夸张的话,叫做“没有阅读过jdk源码的人不算学过java”。从今天起开始精读源码。而适合精读的源码无非就是java.io,.util和.lang包下的类。

面试题中对于集合的考察还是比较多的,所以我就先从集合的源码开始看起。

(一)首先是Collection接口。

Collection是所有collection类的根接口;Collection继承了Iterable,即所有的Collection中的类都能使用foreach方法。

/**

* Collection是所有collection类的根接口;

* Collection继承了Iterable,即所有的Collection中的类都能使用foreach方法。

* @author WGS

* @param

*/

public interface Collection extends Iterable {

//返回集合中元素的大小。(如果此大小值超过Integer.MAX_VALUE,就直接返回Integer.MAX_VALUE)

int size();

//判断集合是否为空

Boolean isEmpty();

//判断集合是否包含元素o(注意元素e是否为null及类型是否兼容问题)

Boolean contains(Object o);

//返回集合中元素的迭代器(顺序不能保证,除非集合指定了顺序)

Iterator iterator();

//以数组的形式返回集合中的所有元素,数组是安全

Object[] toArray();

//以数组形式返回指定数组类型的集合元素

T[] toArray(T[] a);

//此方法可用来判断集合中是否含有元素e;是-false,否-true(在set,map中会经常调用这个方法,在编程题时很有用)

Boolean add(E e);

//从集合中移除指定的元素

Boolean remove(Object o);

//用来判断是否含有指定集合中的所以元素

Boolean containsAll(Collection> c);

//将指定集合中的所有元素添加至调用者的集合中

Boolean addAll(Collection extends E> c);

//移除与指定集合相同的元素(即移除两集合交集部分)

Boolean removeAll(Collection> c);

//保留与指定集合中相同的元素(即移除与指定集合不同的元素)

Boolean retainAll(Collection> c);

//清空集合

void clear();

//判断与指定元素是否相等

Boolean equals(Object o);

//返回集合的哈希码值

int hashCode();

}

总结

以上就是本文关于jdk源码阅读Collection详解的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值