欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

三:redis的List类型相关操作

程序员文章站 2024-01-16 14:49:04
...

==========================三种:List类型===================== 介绍:list类型及操作 list是一个链接表结果,只要功能是push,pop、获取一个范围的所有等等, 操作key理解为链表的名字,redis的list类型其实就是一个每个子元素都是string类型的双向链表。

==========================三种: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 例: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========================================