使用ListOperations对象操作redis list:

方法 c参数 s说明  
List<V> range(K key, long start, long end);

K key:集合key 
long start:起始位置
long end:结束位置
 获取集合中指定范围的元素  

void trim(K key, long start, long end);

K key:集合key 
long start:起始位置
long end:结束位置

修剪集合中指定范围的元素

这里的修剪的意思就是把start到end之间的集合数据保留,其余的全部删除

 

Long size(K key);

K key:集合key 
 获取集合的长度  

Long leftPush(K key, V value);

K key:集合key
V value:key对应的值
 向集合中添加一个元素。从左到右  

Long leftPushAll(K key, V... values);

K key:集合key
V... values:key对应的值
 向集合中添加一个或多个元素,从左到右  

Long leftPushAll(K key, Collection<V> values);

K key:集合key
Collection<V> values:key对应的值集合
 向集合中添加一个或多个元素,元素以集合的方式存在,从左到右  

Long leftPushIfPresent(K key, V value);

K key:集合key V 
value:key对应的值
 仅当集合存在时,向集合中添加一个元素,从左到右  

Long leftPush(K key, V pivot, V value);

K key:集合key
V pivot:集合中已存在的元素
V value:一个新元素

向集合中添加一个元素,该元素添加在某一个已经存在的元素前边

pivot代表已经存在的元素,value代表新元素

如:[1,2,3] 这是当前集合中的所有元素,现在向这个集合中添加一个元素6

并且将6添加到2的前边,这时方法的参数 pivot则为2,value为6

注:搜索顺序是从左往右

 

Long rightPush(K key, V value);

K key:集合key V 
value:key对应的值
 向集合中他添加一个新元素,从右往左  

Long rightPushAll(K key, V... values);

K key:集合key
V... values:key对应的值
 向集合中添加一个或多个新元素,从右往左  

Long rightPushAll(K key, Collection<V> values);

K key:集合key
Collection<V> values:key对应的值集合
  向集合中添加一个或多个元素,元素以集合的方式存在,从右到左  

Long rightPushIfPresent(K key, V value);

K key:集合key V 
value:key对应的值
 仅当集合存在时,向集合中添加一个元素,从右到左  

Long rightPush(K key, V pivot, V value);

K key:集合key
V pivot:集合中已存在的元素
V value:一个新元素

向集合中添加一个元素,该元素添加在某一个已经存在的元素前边

pivot代表已经存在的元素,value代表新元素

如:[1,2,3] 这是当前集合中的所有元素,现在向这个集合中添加一个元素6

并且将6添加到2的前边,这时方法的参数 pivot则为2,value为6

注:搜索顺序是从右到左

 

void set(K key, long index, V value);

K key:集合key
long index:索引
V value:key对应的值
 向集合中指定索引下添加一个新元素,并覆盖当前集合中指定位置的值  

Long remove(K key, long count, Object value);

K key:集合key
long count:数量
Object value:key对应的值

删除集合中的值,因为list中允许重复数据存在,所以可能有多个相同的

元素存在同一个集合中,这是可用count参数选择性删除数量

 

V index(K key, long index);

K key:集合key
long index:索引
 根据索引获取集合中的元素  

V leftPop(K key);

K key:集合key
 删除集合中所有的元素,并返回集合总第一个元素,从左往右  

V leftPop(K key, long timeout, TimeUnit unit);

K key:集合key 
long timeout:连接超时时长
TimeUnit unit:超时时间单位

删除集合中所有的元素,并返回集合总第一个元素;从左往右

注:以上一个方法,具体区别没有实际验证过,如果有涉及此处的大佬,欢迎评论区解答

 

V rightPop(K key);

K key:集合key
 删除集合中所有的元素,并返回集合总最后一个元素,从右往左  

V rightPop(K key, long timeout, TimeUnit unit);

K key:集合key 
long timeout:连接超时时长
TimeUnit unit:超时时间单位

删除集合中所有的元素,并返回集合总最后一个元素,从右往左

注:以上一个方法,具体区别没有实际验证过,如果有涉及此处的大佬,欢迎评论区解答

 

V rightPopAndLeftPush(K sourceKey, K destinationKey);

K sourceKey:原集合key 
K destinationKey:目标集合key
 在原集合中删除最后一个元素,添加到目标几何中的头部(添加顺序是从左往右)  

V rightPopAndLeftPush(K sourceKey, K destinationKey, long timeout, TimeUnit unit);

K sourceKey:原集合key 
K destinationKey:目标集合key
long timeout:连接超时时长
TimeUnit unit:超时时间单位

在原集合中删除最后一个元素,添加到目标几何中的头部(添加顺序是从左往右)

注:以上一个方法,具体区别没有实际验证过,如果有涉及此处的大佬,欢迎评论区解答

 

使用ListOperations操作redis的更多相关文章

  1. 3、使用ListOperations操作redis(List列表)

    文章来源:https://www.cnblogs.com/shiguotao-com/p/10560354.html 方法 c参数 s说明   List<V> range(K key, l ...

  2. Spring Data操作Redis详解

    Spring Data操作Redis详解 Redis是一种NOSQL数据库,Key-Value形式对数据进行存储,其中数据可以以内存形式存在,也可以持久化到文件系统.Spring data对Redis ...

  3. Spring-data-redis操作redis知识汇总

    什么是spring-data-redis spring-data-redis是spring-data模块的一部分,专门用来支持在spring管理项目对redis的操作,使用java操作redis最常用 ...

  4. Spring-data-redis操作redis知识总结

    什么是spring-data-redis spring-data-redis是spring-data模块的一部分,专门用来支持在spring管理项目对redis的操作,使用java操作redis最常用 ...

  5. springboot之使用redistemplate优雅地操作redis

    概述 本文内容主要 关于spring-redis 关于redis的key设计 redis的基本数据结构 介绍redis与springboot的整合 sringboot中的redistemplate的使 ...

  6. Java Spring mvc 操作 Redis 及 Redis 集群

    本文原创,转载请注明:http://www.cnblogs.com/fengzheng/p/5941953.html 关于 Redis 集群搭建可以参考我的另一篇文章 Redis集群搭建与简单使用 R ...

  7. Java中使用Jedis操作Redis(转载)

    整理 1.字符串 添加:set keyname value 查询:get keyname 拼接:append keyname value 删除:del keyname 添加多个: mset keyna ...

  8. (转)Java中使用Jedis操作Redis

    转自http://www.cnblogs.com/liuling/p/2014-4-19-04.html 使用Java操作Redis需要jedis-2.1.0.jar,下载地址:http://file ...

  9. Python—操作redis

    Python操作redis 连接方式:点击 1.String 操作 redis中的String在在内存中按照一个name对应一个value来存储 set() #在Redis中设置值,默认不存在则创建, ...

随机推荐

  1. react(三):容器组件和傻瓜组件

    让一个组件只专注于一件事,如果发现让一个组件做的事情太多,就可以把这个组件拆分成多个组件让每一个组件只专注于一件事 <深入浅出react和redux> ---程墨 一个react组件最基本 ...

  2. 课时91.CSS元素显示模式(掌握)

    在HTML中HTML将所有的标签分为两类,分别是容器级和文本级 在CSS中CSS也将所有的标签分为两类,分别是块级元素和行内元素 1.什么是块级元素,什么是行内元素? 块级元素会独占一行 行内元素不会 ...

  3. CommonJs模块规范

    1.什么是模块化 文件作用域 通信规则 加载 require 导出 exports 2.CommonJs模块规范 在Node中的Javascript还有一个很重要的概念:模块概念 模块作用域 使用re ...

  4. CF1042A 【Benches】(优先队列)

    这是一道良心的cf题 题意里让你求的是来了m个人后人数最多的长椅上最少和最多有多少人 如果要求最多,很好办,m个人都挤到原来人数最多的长椅上了(一眼看出) 但如果要求最少呢? 大家看图 长椅某个时间的 ...

  5. 【CodeForces 660D】Number of Parallelograms(n个点所能组成的最多平行四边形数量)

    You are given n points on a plane. All the points are distinct and no three of them lie on the same ...

  6. angular、angular2、vue的生命周期

    angular生命周期是什么 1.Angular每个组件都存在一个生命周期,从创建,变更到销毁.Angular提供组件生命周期钩子,把这些关键时刻暴露出来,赋予在这些关键结点和组件进行交互的能力,掌握 ...

  7. loushang框架的开发中关于BSP的使用,将写好的功能模块部署到主页界面结构上

    前言: 当我们已经开发好相应的模块或者功能的时候,需要将这个功能部署在index主页上作为可点击直接使用的模块,而不是每次需要去浏览对应的url地址. 这时候就需要运用到L5的BSP. 作为刚刚入门l ...

  8. php PHPEXcel导出

    1获取数据,2组装数据,3生成文件. 注意:无法使用ajax生成导出. $settlement = \Yii::$app->request->get('settlement'); $sav ...

  9. python学习之控制流2

    配置环境:python 3.6 python编辑器:pycharm 代码如下: #!/usr/bin/env python #-*- coding: utf-8 -*- # 控制流语句: # if语句 ...

  10. Python特别low的一个文字游戏

    闲来无事 ,调侃舍友的游戏 import os class Role(): def __init__(self,name,sex,fighting): self.name=name self.sex= ...