RedisTemplate常用集合使用说明-opsForList(三)

摘要:
Java代码ListList=redisTemplate。opsForList()。范围System.out。打印ln;4.LeftPush将最后一个参数值放在指定集合中第一个中间参数之前(如果有)。Java代码redisTemplate。opsForList()。右推;list=redisTemplate.opsForList()。范围System.out。打印ln;10.RightPushAll批量向右侧添加元素。

1、leftPush(K key, V value)

  在变量左边添加元素值。

Java代码  收藏代码

  1. redisTemplate.opsForList().leftPush("list","a");  
  2. redisTemplate.opsForList().leftPush("list","b");  
  3. redisTemplate.opsForList().leftPush("list","c");  

     2、index(K key, long index)

  获取集合指定位置的值。

Java代码  收藏代码

  1. String listValue = redisTemplate.opsForList().index("list",1) + "";  
  2. System.out.println("通过index(K key, long index)方法获取指定位置的值:" + listValue);  

     3、range(K key, long start, long end)

获取指定区间的值。

Java代码  收藏代码

  1. List<Object> list =  redisTemplate.opsForList().range("list",0,-1);  
  2. System.out.println("通过range(K key, long start, long end)方法获取指定范围的集合值:"+list);  

    4、leftPush(K key, V pivot, V value)

     把最后一个参数值放到指定集合的第一个出现中间参数的前面,如果中间参数值存在的话。

Java代码  收藏代码

  1. redisTemplate.opsForList().leftPush("list","a","n");  
  2. list =  redisTemplate.opsForList().range("list",0,-1);  
  3. System.out.println("通过leftPush(K key, V pivot, V value)方法把值放到指定参数值前面:" + list);  

     5、leftPushAll(K key, V... values)

  向左边批量添加参数元素。

Java代码  收藏代码

  1. redisTemplate.opsForList().leftPushAll("list","w","x","y");  
  2. list =  redisTemplate.opsForList().range("list",0,-1);  
  3. System.out.println("通过leftPushAll(K key, V... values)方法批量添加元素:" + list);  

     6、leftPushAll(K key, Collection<V> values)

   以集合的方式向左边批量添加元素。

Java代码  收藏代码

  1. List newList = new ArrayList();  
  2. newList.add("o");  
  3. newList.add("p");  
  4. newList.add("q");  
  5. redisTemplate.opsForList().leftPushAll("list",newList);  
  6. list =  redisTemplate.opsForList().range("list",0,-1);  
  7. System.out.println("通过leftPushAll(K key, Collection<V> values)方法以集合的方式批量添加元素:" + list);  

     7、leftPushIfPresent(K key, V value)

  如果存在集合则添加元素。

Java代码  收藏代码

  1. redisTemplate.opsForList().leftPushIfPresent("presentList","o");  
  2. list =  redisTemplate.opsForList().range("presentList",0,-1);  
  3. System.out.println("通过leftPushIfPresent(K key, V value)方法向已存在的集合添加元素:" + list);  

     8、rightPush(K key, V value)

   向集合最右边添加元素。

Java代码  收藏代码

  1. redisTemplate.opsForList().rightPush("list","w");  
  2. list =  redisTemplate.opsForList().range("list",0,-1);  
  3. System.out.println("通过rightPush(K key, V value)方法向最右边添加元素:" + list);  

      9、rightPush(K key, V pivot, V value)

   向集合中第一次出现第二个参数变量元素的右边添加第三个参数变量的元素值。

Java代码  收藏代码

  1. redisTemplate.opsForList().rightPush("list","w","r");  
  2. list =  redisTemplate.opsForList().range("list",0,-1);  
  3. System.out.println("通过rightPush(K key, V pivot, V value)方法向最右边添加元素:" + list);  

     10、rightPushAll(K key, V... values)

   向右边批量添加元素。

Java代码  收藏代码

  1. redisTemplate.opsForList().rightPushAll("list","j","k");  
  2. list =  redisTemplate.opsForList().range("list",0,-1);  
  3. System.out.println("通过rightPushAll(K key, V... values)方法向最右边批量添加元素:" + list);  

    11、rightPushAll(K key, Collection<V> values)

   以集合方式向右边添加元素。

Java代码  收藏代码

  1. newList.clear();  
  2. newList.add("g");  
  3. newList.add("h");  
  4. redisTemplate.opsForList().rightPushAll("list",newList);  
  5. list =  redisTemplate.opsForList().range("list",0,-1);  
  6. System.out.println("通过rightPushAll(K key, Collection<V> values)方法向最右边以集合方式批量添加元素:" + list);  

    12、rightPushIfPresent(K key, V value)

  向已存在的集合中添加元素。

Java代码  收藏代码

  1. redisTemplate.opsForList().rightPushIfPresent("presentList","d");  
  2. list =  redisTemplate.opsForList().range("presentList",0,-1);  
  3. System.out.println("通过rightPushIfPresent(K key, V value)方法已存在的集合向最右边添加元素:" + list);  

    13、size(K key)

获取集合长度。

Java代码  收藏代码

  1. long listLength = redisTemplate.opsForList().size("list");  
  2. System.out.println("通过size(K key)方法获取集合list的长度为:" + listLength);  

     14、leftPop(K key)

       移除集合中的左边第一个元素。

Java代码  收藏代码

  1. Object popValue = redisTemplate.opsForList().leftPop("list");  
  2. System.out.print("通过leftPop(K key)方法移除的元素是:" + popValue);  
  3. list =  redisTemplate.opsForList().range("list",0,-1);  
  4. System.out.println(",剩余的元素是:" + list);  

     15、leftPop(K key, long timeout, TimeUnit unit)

   移除集合中左边的元素在等待的时间里,如果超过等待的时间仍没有元素则退出。

Java代码  收藏代码

  1. popValue = redisTemplate.opsForList().leftPop("presentList",1, TimeUnit.SECONDS);  
  2. System.out.print("通过leftPop(K key, long timeout, TimeUnit unit)方法移除的元素是:" + popValue);  
  3. list =  redisTemplate.opsForList().range("presentList",0,-1);  
  4. System.out.println(",剩余的元素是:" + list);  

     16、rightPop(K key)

        移除集合中右边的元素。

       

Java代码  收藏代码

  1. popValue = redisTemplate.opsForList().rightPop("list");  
  2. System.out.print("通过rightPop(K key)方法移除的元素是:" + popValue);  
  3. list =  redisTemplate.opsForList().range("list",0,-1);  
  4. System.out.println(",剩余的元素是:" + list);  

      17、rightPop(K key, long timeout, TimeUnit unit)

   移除集合中右边的元素在等待的时间里,如果超过等待的时间仍没有元素则退出。

Java代码  收藏代码

  1. popValue = redisTemplate.opsForList().rightPop("presentList",1, TimeUnit.SECONDS);  
  2. System.out.print("通过rightPop(K key, long timeout, TimeUnit unit)方法移除的元素是:" + popValue);  
  3. list =  redisTemplate.opsForList().range("presentList",0,-1);  
  4. System.out.println(",剩余的元素是:" + list);  

     18、rightPopAndLeftPush(K sourceKey, K destinationKey)

  移除集合中右边的元素,同时在左边加入一个元素。

Java代码  收藏代码

  1. popValue = redisTemplate.opsForList().rightPopAndLeftPush("list","12");  
  2. System.out.print("通过rightPopAndLeftPush(K sourceKey, K destinationKey)方法移除的元素是:" + popValue);  
  3. list =  redisTemplate.opsForList().range("list",0,-1);  
  4. System.out.println(",剩余的元素是:" + list);  

     19、rightPopAndLeftPush(K sourceKey, K destinationKey, long timeout, TimeUnit unit)

  移除集合中右边的元素在等待的时间里,同时在左边添加元素,如果超过等待的时间仍没有元素则退出。

Java代码  收藏代码

  1. popValue = redisTemplate.opsForList().rightPopAndLeftPush("presentList","13",1,TimeUnit.SECONDS);  
  2. System.out.println("通过rightPopAndLeftPush(K sourceKey, K destinationKey, long timeout, TimeUnit unit)方法移除的元素是:" + popValue);  
  3. list =  redisTemplate.opsForList().range("presentList",0,-1);  
  4. System.out.print(",剩余的元素是:" + list);  

  20、set(K key, long index, V value)

  在集合的指定位置插入元素,如果指定位置已有元素,则覆盖,没有则新增,超过集合下标+n则会报错。

Java代码  收藏代码

  1. redisTemplate.opsForList().set("presentList",3,"15");  
  2. list =  redisTemplate.opsForList().range("presentList",0,-1);  
  3. System.out.print("通过set(K key, long index, V value)方法在指定位置添加元素后:" + list);  

  21、remove(K key, long count, Object value)

  从存储在键中的列表中删除等于值的元素的第一个计数事件。count> 0:删除等于从左到右移动的值的第一个元素;count< 0:删除等于从右到左移动的值的第一个元素;count = 0:删除等于value的所有元素。

Java代码  收藏代码

  1. long removeCount = redisTemplate.opsForList().remove("list",0,"w");  
  2. list =  redisTemplate.opsForList().range("list",0,-1);  
  3. System.out.println("通过remove(K key, long count, Object value)方法移除元素数量:" + removeCount);  
  4. System.out.println(",剩余的元素:" + list);  

      22、trim(K key, long start, long end)

  截取集合元素长度,保留长度内的数据。

Java代码  收藏代码

  1. redisTemplate.opsForList().trim("list",0,5);  
  2. list =  redisTemplate.opsForList().range("list",0,-1);  
  3. System.out.println("通过trim(K key, long start, long end)方法截取后剩余元素:" + list);  、

本文转载:https://blog.csdn.net/qq_39071667/article/details/88866092

免责声明:文章转载自《RedisTemplate常用集合使用说明-opsForList(三)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇数据可视化之DAX篇(一)Power BI时间智能函数如何处理2月29日的?idea提示: 8080端口被占用下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

判断list为空的条件

if(list!=null&&!list.isEmpty()){                    hql.append(" and (status = ? or status=? or status=? or status=?)");                    params.add(queryModel.getStatus...

「快应用篇02」快应用开发时,优化总结篇

童鞋们好,国庆节已经结束。大家是否已经把学习与工作模式完全切回来了呢? 欢迎关注公众号:大前端早读 之前一篇文章我们了解了一下什么是快应用,现在我们带大家来看看快应用开发时,需要做到的一些优化方式。如果对快应用开发并不熟悉的童鞋,可以先去学一学快应用的一般开发方式。 快应用是一种新的应用形态,以往的手机端应用主要有两种方式:网页、原生应用;网页无需安装,...

easyPoi 工具类

import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.ExcelImportUtil; import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.afterturn.ea...

生成指定数量的假数据

实际上也不是什么正经需求,只是在画页面的时候需要放一些随机的假数据,且最好不要重复。我这里只放了十套假数据就懒得再放了,写成了一个方法先放在这里 随机生成一些假数据: private String getRandomInfo(String flag, int num){ List<String> list = null; int...

List集合流处理类型小结

本文为博主原创,未经允许不得转载 对应实体类 importlombok.Getter; importlombok.Setter; @Getter @Setter public classStudent { privateString name; private intage; privateStrin...

Dbutils

 commons-dbutils 是 Apache 组织提供的一个开源 JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用dbutils能极大简化jdbc编码的工作量,同时也不会影响程序的性能。因此dbutils成为很多不喜欢hibernate的公司的首选。   DbUtils组件, 1.       简化jdbc操作 2.       下...