<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>30.1-jre</version>
</dependency>
public class BloomFilterDemo {
public static void main(String[] args) {
/**
* 創建一個插入對象爲一億,誤報率爲0.01%的布隆過濾器
* 不存在一定不存在
* 存在不一定存在
*/
BloomFilter<CharSequence> bloomFilter = BloomFilter.create(Funnels.stringFunnel(Charset.forName("utf-8")),
100000000,
0.0001);
bloomFilter.put("死");
bloomFilter.put("磕");
bloomFilter.put("Redis");
System.out.println(bloomFilter.mightContain("Redis"));
System.out.println(bloomFilter.mightContain("死"));
System.out.println(bloomFilter.mightContain("磕"));
System.out.println(bloomFilter.mightContain("Java"));
}
}
往期推薦
曝光!某銀行軟件開發中心拖欠工資,招聘套路深!防不勝傷!!
絕了!這款工具讓 Spring Boot 不在需要 Controller、Service、DAO、Mapper 了
黑客用GitHub服務器挖礦,三天跑了3萬個任務,代碼驚現中文
直面Java第343期:爲什麼TOMCAT要破壞雙親委派
深入併發第013期:拓展synchronized——鎖優化
本文分享自微信公衆號 - Hollis(hollischuang)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。