首页 / 技术专题CATEGORY / SPRINGFORALL

Java

在这个技术方向,积累扎实的知识与实践。

共 564 篇文章

20亿手机号存储检索去重

最近看到 一个20亿手机号存储检索的问题,这里做一下记录,方便学习 1、场景描述 在20亿个随机整数中找出某个数m是否存在其中,并假设32位操作系统,4G内存。 1byte=8bit 1kb=1024byte 1mb=1024kb 1gb=1024mb java中 int类型占用4个字节=4*8=32bit 如果将20亿个整数放入内存中,需要占用多少内存?…

Java面试总结

1. HashMap 1.8与1.7的区别 (1) 扩容因子默认为什么是0.75 如果扩容因子过高,空间利用率提高但是哈希冲突概率增加;如果扩容因子过低,会造成频繁扩容,哈希冲突概率降低,但是空间利用率变低。选择0.75是基于泊松分布,是时间和空间成本上寻求的一种折中选择 (2)为什么链表长度为8要转化为红黑树 首先和 hashcode…

雪花算法自动生成workId

Twitter 的雪花算法大部分人应该都知道,用于生成有序的数值类型的 id。算法的原理也很简单,通过划分了 64 位比特:1 位符号位固定为 0 表示正数,41 位时间戳,5 位数据中心 id,5 位机器 id,12 位有序序号。其中 5 位数据中心 id 和 5 位机器 id,接下来我将合并成 10 位 workid…

G1垃圾回收器参数说明以及常见的GC优化方案

G1垃圾回收器是一种针对多处理器机器和大内存的低停顿、服务端风格的分代垃圾回收器1。它可以通过并行和并发的阶段来达到目标停顿时间和保持良好的吞吐量1。当G1垃圾回收器确定需要进行垃圾回收时,它会优先回收那些存活对象最少的区域(垃圾优先)。 G1垃圾回收器有以下几个主要的参数: -XX:+UseG1GC :启用G1垃圾回收器。…

HashMap和TreeMap的区别

HashMap和TreeMap都是Java中的Map集合接口的实现类,它们之间的区别如下: 1. 树形结构:HashMap是基于哈希表实现的,而TreeMap是基于红黑树实现的,因此TreeMap的key是有序的,而HashMap的key则没有顺序。 2.…