多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
* `sadd key member1 member2`:将一个或多个元素`member`加入到集合`key`当中,并返回添加成功的数目,如果元素已存在则被忽略。 * `sismember key member`:判断元素`member`是否存在集合`key`中。 * `srem key member1 member2`:移除集合`key`中的元素,不存在的元素会被忽略。 * `smove source dest member`:将元素`member`从集合`source`中移动到`dest`中,如果`member`不存在,则不执行任何操作。 * `smembers key`:返回集合`key`中所有元素。 了解了操作集合对象的常用命令,我们就可以来验证下前面提到的哈希对象的类型和编码了,在测试之前为了防止其它`key`值的干扰,我们先执行`flushall`命令清空`Redis`数据库。 依次执行如下命令: ~~~sql sadd num 1 2 3 //设置 3 个整数的集合,会使用 intset 编码 type num //查看类型 object encoding num //查看编码 sadd name 1 2 3 test //设置 3 个整数和 1 个字符串的集合,会使用 hashtable 编码 type name //查看类型 object encoding name //查看编码 ~~~ 得到如下效果: ![](https://img.kancloud.cn/10/3f/103ff4a821c45cc5e09e6534df841c3e_633x273.png) 可以看到,当设置的元素里面只有整数时,集合使用的就是`intset`编码;当设置的元素中含有非整数时,使用的就是`hashtable`编码。