Bitmap(位图,数据结构,都是操作二进制来进行记录,只有两个状态)
按位存储
Bitmap的使用场景:
1 统计用户信息,活跃,不活跃
2 打卡,两个状态的,都可以使用Bitmap
Bitmap的方法:
场景:使用bitmaps来实现周一到周五的打卡,下表从0开始打卡:1 不打卡:0,判断打卡天数,只需要统计状态为1的即可,例如:周一(0)打卡(1),周二(1)不打卡(0)
1 setbit(name)(sign1) (sign2) 设置元素,一般有两个状态
2 getbit(name)(sign) 根据状态获取某一个值
3 bitcount(name)统计全部的元素个数
1127.0.0.1:6379[2]> setbit sign 0 1 #添加元素例如:周一(0)打卡(1),周二(1)不打卡(0) (integer) 0 127.0.0.1:6379[2]> setbit sign 1 0 #添加元素例如:周一(0)打卡(1),周二(1)不打卡(0) (integer) 0 127.0.0.1:6379[2]> setbit sign 2 0 #添加元素例如:周一(0)打卡(1),周二(1)不打卡(0) (integer) 0 127.0.0.1:6379[2]> setbit sign 3 1 #添加元素例如:周一(0)打卡(1),周二(1)不打卡(0) (integer) 0 127.0.0.1:6379[2]> setbit sign 4 1 #添加元素例如:周一(0)打卡(1),周二(1)不打卡(0) (integer) 0 127.0.0.1:6379[2]> getbit sign 0 #查看周一是否打卡 (integer) 1 #打卡 127.0.0.1:6379[2]> getbit sign 1 #查看周二是否打卡 (integer) 0 #没打卡 127.0.0.1:6379[2]> bitcount sign #查看周一到周五打卡的全部天数 (integer) 3