- 博客(6)
- 收藏
- 关注
原创 hashmap扩容机制
HashMap的底层有数组 + 链表(红黑树)组成,数组的大小可以在构造方法时设置,默认大小为16,数组中每一个元素就是一个链表,jdk7之前链表中的元素采用头插法插入元素,jdk8之后采用尾插法插入元素,由于插入的元素越来越多,查找效率就变低了,所以满足某种条件时,链表会转换成红黑树。(如开始创建HashMap集合后,数组长度为16,临界值为16 * 0.75 = 12,当加入元素后元素个数超过12,数组长度扩容为32,临界值变为24)
2023-10-16 16:55:06 73 1
原创 stringbuffer和builder区别
只是StringBuffer中的方法大都采用了 synchronized 关键字进行修饰,因此是线程安全的,而StringBuilder没有这个修饰,可以被认为是线程不安全的。普通的string对象创建,对其进行操作,会开辟新的存储空间,而不是在原地址上进行修改,但是Stringbuilder和String Buffer方法是可以在原地址上进行修改的。在单线程程序下,StringBuilder效率更快,因为它不需要加锁,不具备多线程安全而StringBuffer则每次都需要判断锁,效率相对更低。
2023-10-09 18:46:58 156 1
原创 JavaScript中获取DOM节点的方法
js获取Dom节点常见的方法:元素节点,属性节点,文本节点。通过ID获取(getElementById)通过name属性(getElementsByName)通过标签名(getElementsByTagName)通过类名(getElementsByClassName)通过选择器获取一个元素(querySelector)通过选择器获取一组元素(querySelectorAll)获取html的方法(document.documentElement)document.documentElemen
2022-10-08 11:19:52 1914 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人