HashMap作为Java集合类重要的元素之一,其蕴含的精妙代码设计,除了在工作中经常用到之外,也是面试中常见的考点。普通的程序员,可能仅仅能说出HashMap线程不安全,允许key、value为null,以及不要求线程安全时,效率上比HashTable要快一些。稍微好一些的,会对具体实现有过大概了解,能说出HashMap由数组+链表+RBT实现(JDK8),并了解HashMap的扩容机制。如果你有刨根问底的激情,那么你肯定想知道它具体是如何实现的。
Hexo NexT主题自定义友链页面
Next 的友链,默认是在主题配置文件中 links 下添加,当链接变多以后,侧栏页面的排版很不美观,这时候就需要给友链新增一个单独的页面了,下面说一下具体步骤。
Hexo NexT百度分享不支持https问题
在 NexT 主题中已经预置了百度分享功能,通过主题配置文件中的 baidushare 即可开启,根据 next/layout/_partials/share/baidushare.swig 中已经预设的 type 类型。
Hexo NexT中文链接转拼音
以中文为标题的文章,生成的网站链接也是包含中文的,复制后的链接是一堆字符串编码,非常不利于阅读,也不简洁:
包含中文的网站链接,同样不利于 SEO,而且标题修改后,URL 也会重新生成。
Hexo NexT主题集成Gitalk评论
Gitalk 是一款基于 Github Issue 和 Preact 开发的评论插件,评论时需使用 Github 账号进行登录,另一款 Gitment 与之类似。这里记录下在 NexT 主题中集成 Gitalk 的相关步骤。
Java内存区域&内存模型
Java作为一种面向对象、跨平台的语言,其对象、内存等一直是比较难懂的点。在谈及JVM时,Java内存区域(内存结构)和 Java内存模型(JMM)都是必不可少的,但是很多人把这俩概念都搞混了:Java内存区域和Java内存模型是两个概念。
内存区域:指JVM运行时将数据分区域存储,强调对内存空间的划分。
内存模型:定义了线程和主内存之间的抽象关系,即JMM定义了JVM在计算机内存(RAM)中的工作方式。