- 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧
一、 list
ArrayList
ArrayList底层结构采用Object 数组,支持随机访问,而LinkedList底层结构采用双向链表,不支持随机访问。数组的插入和删除元素会受到元素位置的影响:当插入或者删除元素在末尾时,时间复杂度为O1,但是在其他位置是On,但是链表一般都是O1。在内存空间的占用上:数组会有一定的预留空间,并进行扩容,而链表则是每……继续阅读 »
hashMap 面试遇到的一些总结,欢迎大家来交流。
注: 看hashMap源码需要了解:二进制运算符号
1、位异或运算(^):二进制运算,如果相同则为0,不相同则为1 2、 位与运算符(&):二进制运算,如果两个数都为1则为1,否则为0 3、位或运算符(|):二进制运算,如果两个数有一个为1则为1,否则为0 4、位非运算符(~):如果位为0,结果……继续阅读 »
1:使用Arrays.asList的注意事项
1:arrays.asList返回的arrayList不是我么平时所用的arrayList(平时用到在java.util包下的)这个arrayList是arrays的内部类,它也继承AbstractList,重写了很多方法,比如contains方法
但是确没有重写add方法,所以在调用的时候会报Unsupport……继续阅读 »
1:使用Arrays.asList的注意事项
1:arrays.asList返回的arrayList不是我么平时所用的arrayList(平时用到在java.util包下的)这个arrayList是arrays的内部类,它也继承AbstractList,重写了很多方法,比如contains方法
但是确没有重写add方法,所以在调用的时候会报Unsupport……继续阅读 »
转自:https://www.cnblogs.com/chengxiao/p/6059914.html
哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而HashMap的实现原理也常常出现在各类的面试题中,重要性可见一斑。本文会对java……继续阅读 »
查看源码:
/**
* Increases the capacity to ensure that it can hold at least the
* number of elements specified by the minimum capacity argument.
*
* @param minCa……继续阅读 »
Java List是一个有序集合。Java List是扩展Collection接口的接口。Java List提供对可插入元素的位置的控制。您可以按索引访问元素,也可以搜索列表中的元素。
目录
Java列表
Java列表类图
Java列表方法
要列出的Java数组
Java List to Array
Java列表排序
Java列表常见操作
Ja……继续阅读 »
概要:
java.util 中的集合类包含 Java 中某些最常用的类。最常用的集合类是 List 和 Map。
Map 提供了一个更通用的元素存储方法。Map 集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值。
本文主要介绍java map的初始化、用法、map的四种常用的遍历方式、map的排序以及常用api。……继续阅读 »
三者的关系图:
一、超级接口
Iterable:
该接口中会返回一个迭代器,实现该接口的类都能作为forEach的对象。
二、Collection:继承了Iterable接口,并且可以被以下类实现。
collection是集合listst和set的接口。
(一)List接口(有序)
1、LinkedList实现类:
注:A、LinkedList底层……继续阅读 »
接口java.util.Map,包括3个实现类:HashMap、Hashtable、TreeMap。当然还有LinkedHashMap、ConcurrentHashMap 、WeakHashMap。
Map是用来存储键值对的数据结构,键值对在数组中通过数组下标来对其内容索引的,而键值对在Map中,则是通过对象来进行索引,用来索引的对象叫做key,其对应……继续阅读 »