Redis在Java中Jedis的操作(Set/Zset操作)~

963 阅读2分钟

「这是我参与2022首次更文挑战的第28天,活动详情查看:2022首次更文挑战

Redis在Java中Jedis的操作(Set/Zset操作)

对Set操作的命令

  • 设置集合并添加元素:jedis.sadd

  • 查看集合中的所有元素:jedis.smembers

  • 删除集合中的指定元素:jedis.srem

  • 随机删除集合中的一个元素:jedis.spop

  • 判断集合中指定元素的个数:jedis.scard

  • 移动集合中的指定元素到另一个集合中:jedis.smove

  • 显示指定集合间的交集:jedis.sinter

  • 显示指定集合间的并集:jedis.sunion

  • 显示指定集合间的差集:jedis.sdiff

  • 求交集并将交集保存到指定集合:jedis.sinterstore

代码示例:

public static void main(String[] args) {
        Jedis jedis = new Jedis("127.0.0.1",6379);
        jedis.flushDB();

        System.out.println(" ===========向集合中添加元素(不重复)===========");
        System.out.println(jedis.sadd("eleSet","e1" , "e2" , " e4" ," e3" , "e0" , " e8" ,"e7" ,"e5"));
        System.out.println(jedis.sadd("eleSet","e6"));
        System.out.println(jedis.sadd("eleSet","e6"));
        System.out.println("eleset的所有元素为: "+jedis.smembers("eleSet"));
        System.out.println("删除一个元素e0: "+jedis.srem("eleSet","e0"));
        System.out.println("eleSet的所有元素为: "+jedis.smembers("eleSet"));
        System.out.println("删除两个元素e7和e6: "+jedis. srem("eleSet","e7" , " e6"));
        System.out.println("eleSet的所有元素为: "+jedis.smembers("eleSet"));
        System.out.println("随机的移除集合中的一个元素:"+jedis.spop("eleSet"));
        System.out.println("随机的移除集合中的一个元素: "+jedis.spop("eleSet"));
        System.out.println( "eleSet的所有元素为:"+jedis.smembers("eleSet"));
        System.out.println("eleSet中包含元素的个数:"+jedis.scard("eleSet"));
        System.out.println("e3是否在eleSet中: "+jedis.sismember("eleSet","e3"));
        System.out.println("e1是否在eleSet中: "+jedis.sismember("eleSet","e1"));
        System.out.println("e5是否在eleSet中:"+jedis.sismember("eleSet","e5"));
        System.out.println("====================================");
        System.out. println(jedis.sadd("eleSet1","e1" , " e2" , " e4" , " e3" ," e" ," e8" ," e7" ,"e5"));
        System.out.println(jedis.sadd("eleSet2","e1" , "e2" , " e4" , "e3" , " eo" , " e8" ));
        //从eleSet1移动元素e1到eleSet3中
        System.out.println("将eleset1中删除e1并存入eleset3中:"+jedis.smove("eleSet1"," eleSet3"," e1"));
        System.out.println("将eleSet1中删除e2并存入eleset3中:"+jedis.smove("eleSet1","eleSet3","e2"));
        System.out.println("eleSet1中的元素:"+jedis.smembers( "eleSet1"));
        System.out.println("eleSet3中的元素:"+jedis.smembers("eleSet3"));
        System.out.println("==================集合运算===================");
        System.out.println("eleSet1中的元素:"+jedis.smembers("eleSet1"));
        System.out.println("eleSet2中的元素: "+jedis.smembers("eleSet2"));
        System.out.println("eleSet1和eleSet2的交集: "+jedis.sinter("eleSet1", "eleSet2"));
        System.out.println("eleSet1和eleSet2的并集: "+jedis.sunion("eleSet1" , "eleSet2"));
        System.out.println("eleSet1和eleSet2的差集: "+jedis.sdiff("eleSet1" ,"eleSet2" ));//eleSet1中有eleSet2中没有的元素显示是出来
        jedis.sinterstore("eleSet4","eleSet1","eleSet2");//求交集并将交集保存到eleSet4的集合
        System.out.println("eleSet4中的元素: "+jedis.smembers("eleSet4"));

    }

对Zset操作的命令

所有的api命令,就是我们对应的上面学习的指令,一个都没有变化!

明天继续加油!