zoukankan      html  css  js  c++  java
  • Redis数据类型之Redis列表(List)

    单值多value

    常用

    案例

    lpush/rpush/lrange

    lpop/rpop

    lindex,按照索引下标获得元素(从上到下)

    返回列表里的元素的索引 index 存储在 key 里面。 下标是从0开始索引的,所以 0 是表示第一个元素, 1 表示第二个元素,并以此类推。 负数索引用于指定从列表尾部开始索引的元素。在这种方法下,-1 表示最后一个元素,-2 表示倒数第二个元素,并以此往前推。

    当 key 位置的值不是一个列表的时候,会返回一个error。

    返回值

    请求的对应元素,或者当 index 超过范围的时候返回 nil。

    例子

    redis> LPUSH mylist "World"
    (integer) 1
    redis> LPUSH mylist "Hello"
    (integer) 2
    redis> LINDEX mylist 0
    "Hello"
    redis> LINDEX mylist -1
    "World"
    redis> LINDEX mylist 3
    (nil)
    redis> 

    性能总结

    • 它是一个字符串链表,left、right都可以插入添加;
    • 如果键不存在,创建新的链表;
    • 如果键已存在,新增内容;
    • 如果值全移除,对应的键也就消失了。
    • 链表的操作无论是头和尾效率都极高,但假如是对中间元素进行操作,效率就很惨淡了。
  • 相关阅读:
    203. Remove Linked List Elements
    86. Partition List
    143. Reorder List
    876. Middle of the Linked List
    246. Strobogrammatic Number
    202. Happy Number
    数据类型转换
    表达式
    面向对象
    对齐
  • 原文地址:https://www.cnblogs.com/chengmr/p/13293945.html
Copyright © 2011-2022 走看看