标签: Java

3 篇文章

用 Java 实现一个可用的布隆过滤器(Bloom Filter)
布隆过滤器可以使用极少的空间来判断一个元素是否存在某一个集合中,本文不具体讨论布隆过滤器的原理,而是探讨如何实现一个可用的布隆过滤器。 实现源代码:https://github.com/Smith-Cruise/java-bloom-filter 本文代码提取自 Apache ORC 项目。 基本概念 这里附带一些链接,适合不了解布隆过滤器的人阅读…
JDK 动态代理踩坑
最近阅读 Hadoop 的源码,看到各种动态代理,打算学习下。虽然以前也学过,但是感觉就是死记硬背的代码,有些地方根本不懂。温习了一遍网上 JDK 动态代理的教程后,自己尝试再一次死记硬背的写一写,结果错误百出。于是打算狠下心来系统的学习下动态代理。 在这篇博客中我不会具体的说明动态代理的实现,但是我会贴上我参考的博客供大家参考。 疑问 如果你和我…
有限状态机( Finite State Machine )JAVA 版
介绍 有限状态机通常用于模拟序列逻辑,换句话说,就是用于代表和控制执行流程。 有限状态机所需条件: 一个物体只有固定的几种状态(例如交通灯只有绿灯、黄灯和红灯三个状态)。有固定的变化顺序(例如交通灯只能绿灯->黄灯->红灯->绿灯循环)物体同一时间点上只有一种状态。 例子 这里拿一个空调做例子,图是用了别人的,这里说明下下面三个状…