static void Main(string[] args)
{
RedisClient cli = new RedisClient("127.0.0.1:6379,password=,defaultDatabase=0");
#region 集合操作
//Redis的数据类型集合(Set)是String类型的无序集合。
//集合无序且不存在重复的元素,每个元素都是唯一的。
//集合是通过哈希表来实现的,所以使用集合进行增加、删除、查询操作时的效率特别高,
//复杂度为O(1)。一个集合所能存储的最大容量为2^32-1 个元素。
//添加多个元素到集合中
cli.SAdd("city1","北京","上海","深圳","广州");//添加一线城市
cli.SAdd("city2", "昆明", "海尔滨", "济南", "兰州");//添加二线城市
cli.SAdd("city3", "银川", "丽江", "保定", "襄阳");//添加三线城市
//移动集合元素到另一个集合中
cli.SMove("city2","city1","昆明");
cli.SMove("city2", "city1", "不存在");
//保存多个集合元素到新集合中
//将所有的一二三线城市转移到城市中
cli.SUnionStore("citys","city1","city2","city3");
//判断某个元素是否在集合中
Console.WriteLine(cli.SIsMember("city2","济南"));
//获取集合中元素的数量
Console.WriteLine(cli.SCard("citys"));
//获取集合中的所有元素
var citys = cli.SMembers("citys");
foreach (var item in citys)
{
Console.WriteLine(item);
}
//随机获取集合中的一个元素
Console.WriteLine(cli.SRandMember("citys"));
Console.WriteLine(cli.SRandMember("citys",3));//随机获取三个
Console.WriteLine(cli.SRandMember("citys",-3));//随机获取三个城市可以重复
//获取多个集合中的所有元素
cli.SUnion("city1","city2","city3");
//获取多个集合元素的差集
cli.SDiff("citys","city1");
//获取多个集合差集的元素个数
cli.SDiffStore("diffCount","citys", "city1");
//获取多个集合元素的交集
cli.SInter("citys", "city1");
//获取多个集合交集的元素个数
cli.SInterStore("interCount", "citys", "city1");
//删除集合中的元素,随机删除集合key中的一个或多个元素
cli.SPop("citys");
cli.SPop("citys",2);
//删除集合中的多个元素
cli.SRem("citys","济南","北京");
#endregion
Console.WriteLine("执行完毕");
Console.ReadKey();
}