Redis——jedis的list类型使用

文章介绍了Jedis库中的几个列表操作命令,包括lpush用于在列表头部添加元素,lrange返回指定范围的元素,rpush在尾部添加,lpop和rpop用于移除并返回头部或尾部元素,blpop同时从多个键中删除并返回,以及llen用于获取列表长度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

lpush和lrange

private static void lpushAndLrange(Jedis jedis) {
    jedis.flushAll();
    long len = jedis.lpush("key", "111", "222", "333");
    System.out.println(len);

    List<String> result = jedis.lrange("key", 0, -1);
    System.out.println(result);
}

此处的lpush返回的是value元素个数,类型是long,而lrange返回的是list类型

控制台显示

3
[333, 222, 111]

rpush

和lpush类型,rpush则是尾插

public static void rpush(Jedis jedis){
   jedis.flushAll();
    jedis.rpush("key", "111", "222", "333");

    List<String> result = jedis.lrange("key", 0, -1);
    System.out.println(result);
}

控制台显示:

[111, 222, 333]

lpop

public static void lpop(Jedis jedis){
    jedis.flushAll();
    jedis.rpush("key", "111", "222", "333");

    String result = jedis.lpop("key");
    System.out.println(result);

    result = jedis.lpop("key");
    System.out.println(result);

    result = jedis.lpop("key");
    System.out.println(result);

    result = jedis.lpop("key");
    System.out.println(result);
}

返回值是String类型,如果key已经删完了则返回null

控制台显示:

111
222
333
null

rpop

和lpop类似

public static void rpop(Jedis jedis){
    jedis.flushAll();
    jedis.rpush("key", "111", "222", "333");

    String result = jedis.rpop("key");
    System.out.println(result);

    result = jedis.rpop("key");
    System.out.println(result);

    result = jedis.rpop("key");
    System.out.println(result);

    result = jedis.rpop("key");
    System.out.println(result);
}

控制台显示:

333
222
111
null

blpop

返回的类型是list,第一个元素代表从哪个key对应的list中删除的,第二个元素代表删除的元素是什么

public static void blpop(Jedis jedis){
    jedis.flushAll();
    List<String> result = jedis.blpop(3, "key");
    System.out.println(result.get(0));
    System.out.println(result.get(1));
}

控制台显示:
如果没有向list中添加元素

Exception in thread "main" java.lang.NullPointerException
	at RedisDemoList.blpop(RedisDemoList.java:18)
	at RedisDemoList.main(RedisDemoList.java:10)

另一个服务器往list中添加元素:

key
111

llen

返回的类型是long

public static void llen(Jedis jedis){
    jedis.flushAll();
    jedis.rpush("key", "111", "222", "333");
    long len = jedis.llen("key");
    System.out.println(len);
}

控制台显示:

3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值