java集合类思维导图_Java集合类总结

1、Set存放的元素是无序的不可重复。Set容器类有HashSet,TreeSet等

2、List存放的元素为有序可重复。3、重写equals方法,一般最好重写hasCode方法,当对象作为key的时候及索引,会使用hasCode方法进行查找。4、容器对象在调用remove,contains等方法时需要比较对象是否相等,这会涉及到对象类型的equals方法和hashCode方法。对于自定义的类型,需要重写equals和hashCode方法以实现自定义的对象相等规则。相等的对象应该具有相等的hashCode。5、ArrayList底层是动态数组实现的,便于查找,读快6、LinkedList底层以双向链表实现,便于插入和删除,读慢(Hash介于Array(读快改慢)和Linked(改快读慢)两者之间)

7、Map接口的实现类有HashMap(hash实现)和TreeMap(二叉树实现)等。

以下是java中集合的思维导图,总结了Java中集合的关系,区别,特点

bc7fdfc03a181785f939cc7c3cabcadc.gif

由图可以看出,Java中的集合由三部分主成,包括Map,Collection,Collections,

其中Map存储的时key和value,Collection是Set和List的父类,Collections是集合的操作类,可以对集合进行处理。

下面先分析下Collection的源码:package java.util;

public interface Collection extends Iterable {

int size();

boolean isEmpty();

boolean contains(Object o);

Iterator iterator();

Object[] toArray();

 T[] toArray(T[] a);

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();

}

从上我们可以看出Collection继承了了Iterable接口,那么我们在看看Iterable接口的源码,此接口只有3个函数:public interface Iterator {

//刚开始迭代的指针是指向第一元素前面//如果仍有元素可以迭代,则返回 true

boolean hasNext();

//返回迭代的下一个元素。

E next();

//从迭代器指向的 collection 中移除迭代器返回的最后一个元素(可选操作)。

void remove();}

}

通过上面的基础知识相信对java中集合的基础知识应该有所了解,学东西要从源头学习,才能学的扎实,

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值