Redis的List操作
List
是一个字符串链表
Left、right都可插入元素
如果,key不存在,创建链表
如果,key存在,链表添加内容
如果,链表值全部移除,key也就消失了
效率分析
链表的头尾元素操作,效率都非常高
链表中间元素操作,效率比较低
操作命令
Lpush——先进后出,在列表头部插入元素
Rpush——先进先出,在列表的尾部插入元素
Lrange——出栈,根据索引,获取列表元素
Lpop——左边出栈,获取列表的第一个元素
Rpop——右边出栈,获取列表的最后一个元素
Lindex——根据索引,取出元素
Llen——链表长度,元素个数
Lrem——根据key,删除n个value
Ltrim——根据索引,删除指定元素
Rpoplpush——出栈,入栈
Lset——根据index,设置value
Linsert before——根据value,在之前插入值
Linsert after——根据value,在之后插入值
注意
出栈,该元素在链表中,就不存在了
左边,默认为列表的头部,索引小的一方
右边,默认为列表的尾部,索引大的一方
Lpush
先进后出
Rpush
先进先出
Lrange
出栈
Lpop
左边出栈
Rpop
右边出栈
出栈,就不存了
Lindex
根据索引,取出元素
Llen
链表长度,元素个数
Lrem
根据key,删除指定n个,value值
Ltrim
根据索引,删除指定元素
Rpoplpush
出栈,入栈
List1,出栈
List2,入栈
Lset
根据index,设置value
Linsert before
根据value,在之前插入值
Linsert after
根据value,在之后插入值