摘要:
map.put(k,v);原理 先将k,v封装到node对象中 底层调用hashCode()方法得出hash值,通过哈希算法将该hash值转换成数组下标的形式。 若下标位置没有任何元素,则将该节点添加到对应位置上,若下标位置有元素,则用此k和链表中的每一个节点中的k进行比较,如果返回值为false, 阅读全文
摘要:
向Map集合里存放或取出元素时调用方法的本质 首先都是先调用hashCode()方法,其次再调用equals()方法(且equals方法不一定会调用,当K为null时,不调用equals()方法) Map结构详解 Map HashMap HashMap的初始化容量为16,其容量必须为2的倍数 放在M 阅读全文
摘要:
foreach语法结构 for(元素类型 变量名 :数组或集合){ System.out.println(变量名); } 举例: public class ForEachTest { public static void main(String[] args) { int[] arr={1,2,3, 阅读全文
摘要:
哈希表数据结构 HashMap底层数据结构是一个哈希表 哈希表是数组和单向链表的结合体。综合了数组查询效率高和单向链表随机增删效率高这两个优点 哈希表:一维数组,数组中的 每一个元素是一个单向链表 HashMap集合重写了两个方法:hashcode() 和equals()方法 阅读全文
摘要:
集合的继承机构详解 Iterable "可迭代的"即“可遍历的”,Collection接口的父接口; Collection 集合,接口的一种,Iterable的子类,它包括了对集合的基本操作:对集合的增,删,改,查,判断集合是否为空,获取集合大小(注意,此处不是指集合的容量),遍历等等。 常用方法: 阅读全文
摘要:
集合注意事项 向集合中添加的所有元素都必须重写equals方法 当集合的机构发生改变时,集合的迭代器必须重新获取,否则出现异常:concurrentMotificationException 删除元素 remove() *迭代器删除(迭代器跟随着更新) *集合删除(迭代器不会随之更新) 阅读全文
摘要:
集合继承关系图 阅读全文
摘要:
什么时候会发生自动装箱和拆箱? 当赋值或者运算符两边的数据类型不同时发生自动装箱拆箱 对于Integer 类型的数据: -128~+127;类装载的时候,方法区内存就已存在整形常量池,用于容纳着256个数据。 除以上256个数据以外的包装类数据的实体存放在堆内存,实体的引用存放在栈当中。 任何的普通 阅读全文
摘要:
<!--文档声明,提示浏览器改文档的版本,默认为html5--><!doctype html><!--网页根标签--><html> <!--html的子标签,网页头部,head中的所有内容不在网页中显示,有助于浏览器或搜索引擎解析网页--> <head> <!--网页标签,用于设置网页元数据,网页字 阅读全文
摘要:
集合 集合:一种容器,定义 在java.util包下的接口和他的实现类,集合本身就是一个对象,可以容纳其它类型的数据。例如数组就是一个集合。 集合里任何时候存放的是java对象的引用,它不可直接存放基本数据类型。 往不同的集合里存放元素,等于将数据放到了不同的数据结构当中(数据结构即数据存储的结构/ 阅读全文