文章来源:https://www.cnblogs.com/shiguotao-com/p/10560354.html

方法 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:超时时间单位

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

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

 

3、使用ListOperations操作redis(List列表)的更多相关文章

  1. 使用ListOperations操作redis

    使用ListOperations对象操作redis list: 方法 c参数 s说明   List<V> range(K key, long start, long end); K key ...

  2. C#操作Redis List 列表

    /// <summary> /// Redis 列表 /// </summary> public static void Redis_List() { RedisClient ...

  3. Python操作redis系列之 列表(list) (四)

    # -*- coding: utf- -*- import redis r =redis.Redis(host=,password="ZBHRwlb1608") 1. Lpush ...

  4. Python操作redis系列之 列表(list) (五)(转)

    # -*- coding: utf-8 -*- import redis r =redis.Redis(host=") 1. Lpush 命令将一个或多个值插入到列表头部. 如果 key 不 ...

  5. python对redis的常用操作 上 (对列表、字符串、散列结构操作)

    这里的一切讨论均基于python的redis-py库. 安装使用: pip install redis 然后去获取一个redis客户端: redis_conn = redis.Redis(host=R ...

  6. Python操作redis系列之 列表(list) (五)

    # -*- coding: utf- -*- import redis r =redis.Redis(host=,password=") 1. Lpush 命令将一个或多个值插入到列表头部. ...

  7. 第二百九十九节,python操作redis缓存-SortSet有序集合类型,可以理解为有序列表

    python操作redis缓存-SortSet有序集合类型,可以理解为有序列表 有序集合,在集合的基础上,为每元素排序:元素的排序需要根据另外一个值来进行比较,所以,对于有序集合,每一个元素有两个值, ...

  8. 第二百九十八节,python操作redis缓存-Set集合类型,可以理解为不能有重复元素的列表

    python操作redis缓存-Set集合类型,可以理解为不能有重复元素的列表 sadd(name,values)name对应的集合中添加元素 #!/usr/bin/env python # -*- ...

  9. 第二百九十七节,python操作redis缓存-List类型,可以理解为列表

    python操作redis缓存-List类型,可以理解为列表,是可以有重复元素的列表 List操作,redis中的List在在内存中按照一个name对应一个List来存储.如图: lpush(name ...

随机推荐

  1. 洛谷3571 POI2014 SUP-Supercomputer (斜率优化)

    一道神仙好题. 首先看到有多组\(k\),第一反应就是离线. 考虑贪心. 我们每次一定是尽量选择有儿子的节点.以便于我们下一次扩展. 但是对于一个\(k\),每次贪心的复杂度是\(O(n)\) 总复杂 ...

  2. fastjson反序列化-JdbcRowSetImpl利用链

    fastjson反序列化-JdbcRowSetImpl利用链 JdbcRowSetImpl利用链 fastjson反序列化JdbcRowSetImpl - Afant1 - 博客园 (cnblogs. ...

  3. Bootstrap移动端导航(简易)

    效果 在线查看 代码少,都在HTML里 <!DOCTYPE html> <html lang="en"> <head> <meta cha ...

  4. UnboundLocalError: local variable 'range' referenced before assignment

    1. 报错信息 UnboundLocalError: local variable 'range' referenced before assignment 2. 代码 class Car(): &q ...

  5. SharkCTF2021 Babyhttp && get_or_lose

    两道web. Babyhttp: 直接dirsearch,发现同时存在git和bak泄露:经验证,git的没用. 访问index.php.bak, 下载源码: 抓包,改包,发包即可. get_or_l ...

  6. 【数据结构与算法Python版学习笔记】查找与排序——散列、散列函数、区块链

    散列 Hasing 前言 如果数据项之间是按照大小排好序的话,就可以利用二分查找来降低算法复杂度. 现在我们进一步来构造一个新的数据结构, 能使得查找算法的复杂度降到O(1), 这种概念称为" ...

  7. LeetCode:动态规划

    动态规划 动态规划永远的神 这部分主要是学习了 labuladong 公众号中对于动态规划的讲解 刷了些 leetcode 题,在此做一些记录,不然没几天就忘光光了 题目 这部分内容直接上题目了,解题 ...

  8. AndroidStudio中debug.keystore文件不存在解决办法

    Android项目丢失了debug.keystore,直接重新生存一个key. 在cmd下,进入C:\Users\Administrator\.android目录执行命令如下:  keytool -g ...

  9. Web实时通信,SignalR真香,不用愁了

    前言 对于B/S模式的项目,基础的场景都是客户端发起请求,服务端返回响应结果就结束了一次连接:但在很多实际应用场景中,这种简单的请求和响应模式就显得很吃力,比如消息通知.监控看板信息自动刷新等实时通信 ...

  10. Ubuntu 安装 mysql 报错 "update-alternatives: 错误: 候选项路径 /etc/mysql/mysql.cnf 不存在"

    解决方法: sudo cp /etc/mysql/my.cnf /etc/mysql/mysql.cnf 偷梁换柱-! 如果想更新mysql的源方法如下: wget http://dev.mysql. ...