特点:
- 只要返回数据不存在,则肯定不存在。
- 返回数据存在,但只能是大概率存在。
- 同时不能清除其中的数据。
java案例
pom引用
<!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>28.1-jre</version>
</dependency>
测试代码
可能存储的容量:决定存储大小,影响内存空间
可能的错误率:决定计算hash的次数,影响计算速度
BloomFilter<String> bloomFilter = BloomFilter.create(
Funnels.stringFunnel(
Charset.forName("utf-8")),
1024 * 1024 * 32,
0.001);
# 添加
bloomFilter.put("123");
# 判断
bloomFilter.mightContain("123");