zoukankan      html  css  js  c++  java
  • Redis List集合 使用

    列表类型(list)用于存储一个有序的字符串列表,常用的操作是向队列两端添加元素或者获得列表的某一片段。列表内部使用的是双向链表(double linked list)实现的,所以向列表两端添加元素的时间复杂度是O(1),获取越接近列表两端的元素的速度越快。但是缺点是使用列表通过索引访问元素的效率太低(需要从端点开始遍历元素)。

    Redis列表的操作命令和对应的api如下:


    lpush/rpush [list] [value]
    JedisAPI:public Long lpush/rpush(final String key, final String... string)
    功能:从头/尾部向list添加值,返回list长度

    lrange [list] start end
    JedisAPI:public List<String> lrange(final String key, final long start, final long end)
    功能:返回list对应索引区间的值

    linsert [list] [before/after] 'value1' 'value2'
    JedisAPI:public Long linsert(final String key, final LIST_POSITION where, final String pivot, final String value)
    功能:在list的value1的前面/后面插入value2

    lset [list] index ‘value’
    JedisAPI:public String lset(final String key, final long index, final String value)
    功能:在特定索引插入value,注意:如果index为负值,则从list尾部开始算起

    lrem [list] num 'value'
    JedisAPI:public Long lrem(final String key, final long count, final String value)
    功能:从list中删除num个和value相同的值,若num>0,则从链头算起,若<0则从链尾算起,若=0则删除全部

    ltrim [list] start end
    JedisAPI:public String ltrim(final String key, final long start, final long end)
    功能:仅保留list中索引从start到end的值

    lpop [list]
    JedisAPI:public String lpop(final String key)
    功能:从头部删除元素,同时返回该元素

    rpop [list]
    JedisAPI:public String rpop(final String key)
    功能:从尾部删除元素并返回

    rpoplpush [list1] [list2]
    JedisAPI:无
    功能:从list1的尾部移除元素并添加到list2的头部,最后返回被移除的元素值,整个操作是原子的.如果list1是空或者不存在返回 nil

    lindex [list]
    JedisAPI:public String lindex(final String key, final long index)
    功能:index 返回list中index索引位置的元素

    llen [list]
    JedisAPI:public Long llen(final String key)
    功能:返回list的长度

  • 相关阅读:
    ACM题目————食物链
    ACM题目————Find them, Catch them
    hdu 1255 覆盖的面积 (线段树处理面积覆盖问题(模板))
    poj 3373 Changing Digits (DFS + 记忆化剪枝+鸽巢原理思想)
    hdu 3303 Harmony Forever (线段树 + 抽屉原理)
    hdu 2665 Kth number(划分树模板)
    poj 1348 Computing (四个数的加减乘除四则运算)
    hdu 1021 Fibonacci Again(找规律)
    HDU 1560 DNA sequence (IDA* 迭代加深 搜索)
    hdu 1560 DNA sequence(搜索)
  • 原文地址:https://www.cnblogs.com/max-hou/p/11327897.html
Copyright © 2011-2022 走看看