01、目标
掌握set结构的常见命令
java list 和 set区别:
list: 允许添加相同元素
set: 不允许添加相同元素
02、set的常见命令
02-01、sadd 添加元素
语法:sadd key member member1 membe2…membern 给集合key中添加元素。如果添加相同元素就会自动过滤
127.0.0.1:6379> sadd users u1
(integer) 1
127.0.0.1:6379> sadd users u2
(integer) 1
127.0.0.1:6379> sadd users u3 u4 u5
02-02、smembers
smembers key 返回集合中所有的元素
127.0.0.1:6379> smembers users
- “u4”
- “u3”
- “u2”
- “u1”
- “u5”
02-03、srem
srem key member member1 member2 …membern 删除集合中的指定的元素也可以删除多个
127.0.0.1:6379> sadd users u1
(integer) 0
127.0.0.1:6379> srem users u1 u2
(integer) 2
127.0.0.1:6379> srem users u3
(integer) 1
02-04、sismember
sismember key member 查看一个元素member是否存在当前集合中
127.0.0.1:6379> sismember users u4
(integer) 1
127.0.0.1:6379> sismember users u3
(integer) 0
02-05、scard
scard key 返回集合中所有的元素
127.0.0.1:6379> scard users
(integer) 2
127.0.0.1:6379> smembers users
- “u4”
- “u5”
02-06、smove
smove srckey targetkey member 将srckey集合的元素member移动到targetkey集合中
127.0.0.1:6379> smove users blacklist u1
(integer) 1
127.0.0.1:6379> smove users blacklist u2
(integer) 1
127.0.0.1:6379> smembers blacklist
- “u2”
- “u1”
127.0.0.1:6379> scard blacklist
(integer) 2
02-07、srandmember
srandmember key 随机返回集合中的一个元素
127.0.0.1:6379> srandmember users 1
- “u5”
127.0.0.1:6379> srandmember users 2 - “u3”
- “u4”
127.0.0.1:6379> smembers users - “u4”
- “u5”
- “u3”
02-08、spop
spop key 随机删除集合中的元素,并返回
127.0.0.1:6379> spop users 1
- “u3”
127.0.0.1:6379> spop users 1 - “u4”
127.0.0.1:6379> smembers users - “u5”
02-09、sinter
sinter key key1 key2 …keyn 求多个集合的交集
127.0.0.1:6379> sadd s1 1 2 3 4 5 a
(integer) 6
127.0.0.1:6379> sadd s2 a b c 2 3 6
(integer) 6
127.0.0.1:6379> sinter s1 s2
- “3”
- “a”
- “2”
02-10、sinterstore
sinterstore targetkey key1 key2 …keyn 求多个集合的交集并放入到targetkey集合中
127.0.0.1:6379> sinterstore s3 s1 s2
(integer) 3
127.0.0.1:6379> smembers s3
- “2”
- “3”
- “a”
02-11、sunion
sunion key [key1 key2 …keyn] 求多个集合的并集
127.0.0.1:6379> sunion s1 s2
- “3”
- “a”
- “5”
- “c”
- “2”
- “1”
- “6”
- “4”
- “b”
02-12、sunionstore
sunionstore targetkey [key1 key2 …keyn] 求多个集合的并集并放入到targetkey集合中
127.0.0.1:6379> sunionstore s4 s1 s2
(integer) 9
127.0.0.1:6379> smembers s4
- “3”
- “a”
- “5”
- “c”
- “2”
- “1”
- “6”
- “4”
- “b”
02-13、sdiff
sunion key [key1 key2 …keyn] 求多个集合的差集
127.0.0.1:6379> smembers s1
- “3”
- “a”
- “5”
- “2”
- “1”
- “4”
127.0.0.1:6379> smembers s2 - “3”
- “a”
- “2”
- “c”
- “6”
- “b”
127.0.0.1:6379> sdiff s1 s2 - “1”
- “4”
- “5”
127.0.0.1:6379> sdiff s2 s1 - “c”
- “6”
- “b”
02-14、sdiffstore
sdiffstore targetkey [key1 key2 …keyn] 求多个集合的差集 并放入到targetkey集合中
127.0.0.1:6379> sdiffstore s5 s2 s1
(integer) 3
127.0.0.1:6379> smembers s5
- “c”
- “6”
- “b”
HTML 2774 字节 402 单词 201 行