在使用集合的过程中,我们都明白他是通过Key-value的形式来保存的,在存入数据的时候将值赋值给一个key值,去出的时候,我不管你那个value值跑到了什么位置,我只要通过这个key值就可以找到你,也就是说用set的方法取值,他是无序的。但是正是由于你通过key值去取value值,所以具有唯一性。你这个key值就能够确定我这个value值,所以具有确定性。
其实这就和我们平常生活过程中的身份证号有一定的雷同性。当我们在满成年的时候,我们都会去办理一个身份证用来标示自己,这样不管你走到哪里,只要你做犯法又或者什么默默无闻的事情,我都可以通过身份证来查阅你是哪里的,进而对你进行操作。所以身份证对于我们来说,它具有唯一性,每一个人的身份证只用来标识你自己。你只要拿着这个身份证就可以世界各地的去闯荡,这我们可以理解为无序性。
对于集合set而言,就具有这三个特性:
- --无序性
- --唯一性
- --确定性
下边我们通过一些常用命令来对set集合进行了解:
在执行命令之前,首先要明确将redis打开,效果如下图,
通过文件查找命令找到redis客户端,比如我的:
常用命令如下:
1》向集合中添加一些元素:sadd key value1 value2(set add,全拼,供参考)
我在第一行的时候,输入了red,blue,当第二次再输入red的时候,返回0,证明唯一性。最后把所有的信息输出来,它所排列的顺序并非是我添加的先后顺序,证明无序性。
2》 删除集合中的元素: sremvalue1 value2 (set remove):
作用:忽略不存在的元素后,真正删除掉的元素的个数
3》 随机删除集合中的元素:spop key
4》
随机显示一个元素:srandmember key(set random member)
查看是否是这个集合的元素:sismember key(set is member)
返回集合中所有的元素:smembers
显示元素的个数:scard(set card)
5》把color中的value删除,并添加到tool集合中:smove color tool value
以上几个就是有利于对于单个或者一些信息查阅的命令,对于这些常用命令其实就和Linux命令一样,需要一次一次去实践,这样才会熟能生巧,实践吧!