场景一
记录用户的登录情况(日期、次数)。
以用户id为key,值为 bitmap,例如 zhangsan: 0110…0,可以表示用户 zhangsan 在这段时间 第2、第3 天有登录,统计 位值是1 的个数,即登录日期。
场景二
记录某一日期的登录用户。
以日期为key,值为 bitmap,例如 20201128: 0110…0,可以表示 2020-11-28 这一天,用户id=1、id=2 有登录,统计 位值是1 的个数,即当天登录人数。
场景三
使用bitmap表示火车票乘坐区间。比如一张火车票从 a站 到 e站,途径 b c d三站,假设某人占座从b站到c站,那么可以用 01100 来表示。
更详细的参考:
https://blog.csdn.net/guozhifeng2011/article/details/50670417
https://www.cnblogs.com/luckcs/articles/2698096.html
https://www.cnblogs.com/feichengwurao/p/5191253.html
https://www.cnblogs.com/bluedoctor/archive/2012/09/21/2697206.html
场景四
时间区间校验,比如 某一广告只能在一天 12-15、18-20 这两个时间段投放,那么后端可以把一天24个小时用24位表示,那个这个广告的投放标识就是 000000000000111000110000 ,当判断是否可以投放时,就需要看当前小时对应的 bit 位是否为 1 即可。
场景五
区间匹配。比如某一类型的广告位只允许 S级、A级 的广告主投放,而广告主等级有 S、A、B、C 之分,那么可以可以对该广告位设置一个 广告主投放等级的bitmap标识 - 11000,而广告主等级的 bitmap标识分别是 10000、01000、00100、00010、00001,那么判断是否可以投放只要作位运算即可。