首页 > 代码库 > 三:redis的List类型相关操作

三:redis的List类型相关操作

==========================三种:List类型=====================
    介绍:list类型及操作
          list是一个链接表结果,只要功能是push,pop、获取一个范围的所有值等等,
          操作key理解为链表的名字,redis的list类型其实就是一个每个子元素都是string类型的双向链表。
          我们可以通过push、pop操作从链表的头部或者尾部添加删除元素,这样list既可以作为栈,又可以作为队列
          
    1:lpush:
            在key对应list的头部添加字符串元素 (先进后去,类似栈)
            例:lpush list1 "hello"       
                lpush list1 "world"
            取值:lrange list1 0 -1    -->从头取到尾,list1里面的全部去出来来
    2:rpush
            在key对应list的尾部添加字符串元素(先进先去,类似队列)
            例:rpush list2 "le"
                rpush list2 "yangjun"
            取:lrange list2 0 -1    -->le yangjun值
    3:linsert:
            在key对应list的特定位置前或后添加字符串
            例:lpush list3 "one"
                lpush list3 "two"
                linsert list3 before one three     --->在 one和two之间压入一个three
                lrange list2 0 -1      
    4:Lset:
            设置list中指定下标元素的值
            例:lpush list5 one
                lpush list5 two
                lset list5 1 "four"    ---->吧下表为1的值改为 four
    5:lrem:删除相同元素的值
            从key对应list中删除n个和value相同的元素(n<0从尾删除,n=0全部删除)
            例:lpush list5 one
                lpush list5 one
                lrem lise5 1 "one"    --->1表示删除几个,从list5中删除一个one相同的元素,就剩下一个one
                lrem lise5 0 "one"    --->全删
    6:ltrim:
            保留指定key的值范围内的数据
            例:lpush list6 one
                lpush list6 two
                lpush list6 three
                ltrim list6 1 -1   -->保留下标为1 -1的值,其他全部删除
                ltrim list6 1 2       --->保留下标为1和2的,其他删除
    7:lpop:
            从list的头部删除元素,并返回删除元素
            例:rpush list8 one
                rpush list8 two
                lpop list8          -->把one弹出,也就是删除,只留下two
    8:rpop:
            从list的尾部删除元素,并返回删除元素
            例:rpush list8 one
                rpush list8 two
                rpop list8        --->尾部弹出two,只剩下one
    9:rpoplpush:
            从第一个list的尾部移除元素并添加到第二个list的头部
            例:list9:three,hello    list10:hello,foo
                rpoplpush list9 list10    --->吧hello从list9的尾部并吧hello从头部压入list10
                                               list10=hello、hello、foo
    10:lindex:
                返回名称为key的list中index位置的元素
                例:list11:three,two,one
                    lindex list11 0    --->找出下表为0的元素->three
    11:llen:
            返回key对应list的长度
            例:llen list11     -->有几个元素就返回几  比如就一个there就返回1
    ========================================END========================================