上一页 1 2 3 4 5 6 7 8 9 10 ··· 18 下一页
摘要: 转自:https://www.cnblogs.com/zengcongcong/p/11295349.html 1.谈一下HashMap的特性? 1.HashMap存储键值对实现快速存取,允许为null。key值不可重复,若key值重复则覆盖。 2.非同步,线程不安全。 3.底层是hash表,不保证 阅读全文 »
posted @ 2020-06-05 23:33 程序员小宇 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 1、map.put(k,v)实现原理 第一步首先将k,v封装到Node对象当中(节点)。第二步它的底层会调用K的hashCode()方法得出hash值。第三步通过哈希表函数/哈希算法,将hash值转换成数组的下标,下标位置上如果没有任何元素,就把Node添加到这个位置上。如果说下标对应的位置上有链表 阅读全文 »
posted @ 2020-06-05 23:20 程序员小宇 阅读(427) 评论(0) 推荐(0) 编辑
摘要: 摘自:https://www.cnblogs.com/kubidemanong/p/10734045.html 1. 什么是最左前缀原则? 以下回答全部是基于MySQL的InnoDB引擎 例如对于下面这一张表 如果我们按照 name 字段来建立索引的话,采用B+树的结构,大概的索引结构如下 如果我们 阅读全文 »
posted @ 2020-06-05 09:09 程序员小宇 阅读(813) 评论(0) 推荐(0) 编辑
摘要: DNS劫持原理 DNS劫持就是dns系统被入侵或人为的修改某些记录,如A记录,用专业的术语来讲就是通过某些手段取得某域名的解析记录控制权,进而修改此域名的解析结果,导致对该域名的访问由原IP地址转入到修改后的指定IP,其结果就是对特定的网址不能访问或访问的是假网址。 DNS 污染的原理 现行标准中 阅读全文 »
posted @ 2020-06-04 22:17 程序员小宇 阅读(761) 评论(0) 推荐(1) 编辑
摘要: 一、ConcurrentHashMap跟HashMap,HashTable的对比 1. HashMap不是线程安全: 在并发环境下,可能会形成环状链表(扩容时可能造成,具体原因自行百度google或查看源码分析),导致get操作时,cpu空转,所以,在并发环境中使用HashMap是非常危险的 2. 阅读全文 »
posted @ 2020-06-04 10:57 程序员小宇 阅读(417) 评论(0) 推荐(0) 编辑
摘要: 首先注意:B树就是B-树,"-"是个连字符号,不是减号。 B-树是一种平衡的多路查找(又称排序)树,在文件系统中有所应用。主要用作文件的索引。其中的B就表示平衡(Balance) B+树有一个最大的好处,方便扫库,B树必须用中序遍历的方法按序扫库,而B+树直接从叶子结点挨个扫一遍就完了。 B+树支持 阅读全文 »
posted @ 2020-06-04 09:36 程序员小宇 阅读(2329) 评论(0) 推荐(0) 编辑
摘要: 集合判断: ** 例1: 判断集合是否为空:** CollectionUtils.isEmpty(null): true CollectionUtils.isEmpty(new ArrayList()): true CollectionUtils.isEmpty({a,b}): false ** 例 阅读全文 »
posted @ 2020-06-01 21:41 程序员小宇 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 默认的Maven源为国外,下载速度非常慢,修改成阿里源可提高速度 (1)找到 apache-maven-3.5.2\conf 目录中的 settings.xml 文件 (2) 修改maven 本地仓库地址, 首先在D:\Program Files创建文件夹MavenRepository ; 找到se 阅读全文 »
posted @ 2020-06-01 19:11 程序员小宇 阅读(9416) 评论(0) 推荐(1) 编辑
摘要: 主键、外键、where、group by、order by 表的主键、外键必须有索引 数据量超过300的表应该有索引 经常与其他表进行连接的表,在连接字段上应该建立索引 经常出现在where字句中的字段,特别是大表的字段,应该建立索引 索引应该建在选择型高的字段上 索引应该建在小字段上,对于大的文本 阅读全文 »
posted @ 2020-06-01 00:16 程序员小宇 阅读(1147) 评论(0) 推荐(0) 编辑
摘要: 相同点: 两者都是接口;(废话) 两者都可用来编写多线程程序; 两者都需要调用Thread.start()启动线程; 不同点: 两者最大的不同点是:实现Callable接口的任务线程能返回执行结果;而实现Runnable接口的任务线程不能返回结果; Callable接口的call()方法允许抛出异常 阅读全文 »
posted @ 2020-05-31 23:45 程序员小宇 阅读(401) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 18 下一页
点击右上角即可分享
微信分享提示