[一]向列表两端添加元素
-->命令:LPUSH key value [value ...]
-->向列表的左侧添加元素,返回值表示增加元素后列表的长度
-->命令:RPUSH key value [value...]
-->向列表的右侧添加元素,返回值表示增加元素后列表的长度
 
 
[二]从列表两端弹出元素
-->命令:LPOP key
-->从列表的左侧弹出一个元素,列表里需要把这个元素清除
-->命令:RPOP key
-->从列表的右侧弹出一个元素,列表里需要把这个元素清除
 
[三]获取列表中元素的个数
-->命令:LLEN key
-->获取指定列表中存储元素的个数.当键不存在,返回0
-->获取时间复杂度为0,不像mysql需要统计
 
[四]获得列表的片段
-->命令:LRANGE key start stop
-->从列表的指定起始索引,结束索引,获取列表的元素集合。但不会在列表中把这些元素清除
-->索引从0开始,区间是双向闭区间。
-->列表的左端是索引的起始位置,0开始。0表示第一个元素,1表示第二个元素
-->列表也支持负索引。从列表的右端开始。-1表示右端第一个元素,-2表示右端第二个元素
-->LRANGE key 0 -1可以获取列表中所有的元素。
-->如果start的索引位置比stop的索引位置靠后,则返回空别表
-->如果stop大雨实际的索引范围,则会返回到列表最右端的元素
 
[五]删除列表中指定的值
-->命令:LREM key count  value
-->删除列表中前count个值为value的元素。返回值是实际删除的元素个数。
-->count 的值不同,LREM 命令的执行方式会有偏差
  (1)当count>0:列表会从左边开始删除前count个值为value的元素
  (2)当count<0:列表会从右边删除前count的绝对值个值为value的元素
  (3)当count=0:列表会删除所有值为value的元素
 
[六]获得/设置指定索引的元素值
-->命令:LINDEX key index
-->获得列表中指定索引的值
-->命令:LSET key index value
-->设置列表中指定索引的值
 
[七]只保留列表指定片段
-->命令:LTRIM key start end
-->可以删除列表中指定范围以外的所有元素
-->其指定范围的方法和命令LRANGE指定的范围是一样的
 
[八]向列表中插入元素
-->命令:LINSERT key BEFORE|AFTER pivot value
-->该命令会在列表中从左到右查找值为pivot的元素,然后根据第二个参数是before还是after来决定将value插入到该元素的前面还是后面
-->命令的返回值是插入后列表的元素个数
 
[九]将元素从一个列表转移到另一个列表
-->命令:RPOPLPUSH source destination
-->该命令先从source列表类型键的右边弹出一个元素,然后将其加入到destination的列表类型键的左边,并返回这个元素的值
-->当source和destination相同的时候,该命令会不断将队列尾部的元素移动到队列首部。借助这个特性可以实现一个网站监控系统。
 
 
 
 

redis之(六)redis的列表类型的命令的更多相关文章

  1. redis 学习(5)-- 列表类型

    redis 学习(5)-- 列表类型 列表特点 有序.可以重复.左右两边插入弹出 索引相关知识 索引从左往右,从0开始逐个增大 0 1 2 3 4 5 索引从右往左,从-1开始逐个减小 -6 -5 - ...

  2. API的理解和使用——列表类型的命令

    列表类型的命令及对应的时间复杂度 操作 命令 功能 时间复杂度 添加 rpush key value [value ...] 向右插入 O(k),k是元素个数 lpush key value [val ...

  3. Redis系列六 Redis事务

    Redis事务 1.介绍 在Redis事务中可以一次执行多个命令,本质是一组命令的集合.一个事务中的所有命令都会序列化,按顺序地串行化执行而不会被其它命令插入,不许加塞. 2.事务的作用 一个队列中, ...

  4. 15天玩转redis —— 第六篇 有序集合类型

    今天我们说一下Redis中最后一个数据类型 “有序集合类型”,回首之前学过的几个数据结构,不知道你会不会由衷感叹,开源的世界真好,写这 些代码的好心人真的要一生平安哈,不管我们想没想的到的东西,在这个 ...

  5. redis学习笔记-02 list列表类型命令

    一.lpush key value1 value2 value3 value4(命令将一个或多个值插入到列表头部. 如果 key 不存在,一个空列表会被创建并执行 LPUSH 操作) lpush k1 ...

  6. Redis常用命令入门3:列表类型

    列表类型 列表类型也是一个我们很长要用到的一个类型.比如我们发博客,要用到博客列表.如果没有列表我们就只能遍历键来获取所有文章或一部分文章了,这个语法是keys,但是这个命令需要遍历数据库中的所有键, ...

  7. Redis从基础命令到实战之列表类型(List)

    经过上一篇基于Redis散列类型的改造后,实战练习中的商品管理已经具备了增加.修改整体.修改部分属性和分页查询功能,但仍然不支持删除商品的功能.这是因为商品总数是以一个自增数字记录的,且关联了新商品k ...

  8. redis 的使用 ( list列表类型操作)

    list 数据类型 列表类型 list 类型是一个双向操作 从链表的头部或者尾部添加删除元素 list 既可以用作栈 也可以用作队列 list 链表的类型应用场合: 获取最新的 10 个用户的信息 s ...

  9. redis数据类型-列表类型

    列表类型 列表类型(list)可以存储一个有序的字符串列表,常用的操作是向列表两端添加元素,或者获得列表的某一个片段. 列表类型内部是使用双向链表(double linked list)实现的,所以向 ...

随机推荐

  1. 解决webstrom 输入法光标不跟随问题

    参考博客地址 https://blog.csdn.net/wang414300980/article/details/79537875 原因是jdk版本问题,下载jdk jbsdk8u152b1036 ...

  2. selenium - 获取断言信息

    断言:通过脚本提取相应元素的数值,将实际结果与预期结果进行比较.通常获取title,URL,text等信息进行断言. from selenium import webdriver from time ...

  3. (转)关于block使用的5点注意事项

    1.在使用block前需要对block指针做判空处理. 不判空直接使用,一旦指针为空直接产生崩溃. if (!self.isOnlyNet) { if (succBlock == NULL) { // ...

  4. mysql 常用总结

    centos7 安装mysql 数据库安装参考:http://www.cnblogs.com/longrui/p/6071581.htmlhttps://www.cnblogs.com/yoursou ...

  5. 题解【bzoj1010 [HNOI2008]玩具装箱TOY】

    斜率优化动态规划可以用来解决这道题.同时这也是一道经典的斜率优化基础题. 分析:明显是动态规划.令\(dp[i]\)为前\(i\)个装箱的最小花费. 转移方程如下: \[dp[i]=\min\limi ...

  6. java集合之深入分析ArrayList

    ArrayList特点: ArrayList方法实现: 扩容方法的实现: 源码: private void ensureCapacityInternal(int minCapacity) { //如果 ...

  7. liunx环境下安装mysql数据库2

    mysql的安装和配置[1]解压mysql安装包,进入mysql目录,添加用户,并安装,将权限授权给mysql用户

  8. B树和TreeSet与TreeMap

    1. 此前二叉搜索树相关的内容我们均假设可以把整个数据结构存储在计算机的内存中,但是如果数据量过大时,必须把数据结构放在磁盘上,导致大O模型不在适用.目前计算机处理器每秒至少可以执行5亿条指令,磁盘访 ...

  9. CPU上下文切换的次数和时间(context switch)

    什么是CPU上下文切换? 现在linux是大多基于抢占式,CPU给每个任务一定的服务时间,当时间片轮转的时候,需要把当前状态保存下来,同时加载下一个任务,这个过程叫做上下文切换.时间片轮转的方式,使得 ...

  10. UOJ#110. 【APIO2015】Bali Sculptures

    印尼巴厘岛的公路上有许多的雕塑,我们来关注它的一条主干道. 在这条主干道上一共有 NN 座雕塑,为方便起见,我们把这些雕塑从 11 到 NN 连续地进行标号,其中第 ii 座雕塑的年龄是 YiYi 年 ...