第7课:list数据类型

list列表类型因为其独特的结构在众多领域有不可替代的作用
在总结list之前,先要弄明白几个跟list相关的概念:
列表:一个从左到右的队列,个人理解更类似于一个栈,常规模式下,先进列表的元素,后出。
表头元素:列表最左端第一个元素。
表尾元素:列表最右端的最后一个元素。不包含任何元素的列表成为空列表。

应用场景:
1.服务
比如一个操作A之后,有操作B,但是B的实时性要求不高,可以先在A操作结束之后,把B的操作计入list,然后在后台跑一个服务进程,检查list,在合适的时间进行B操作,减轻系统压力
一般用于日志,统计以及一些连带操作
2.分页
因为队列是有序的,对于一些根据指定顺序排列的数据,比如按照添加时间排序的数据,进行分页非常有用。如果直接用缓存分页展示,会比用SQL分页展示速度快很多

常用命令:
1.lpush
语法:lpush key value[value]
解释:把一个或多个元素插入表头。如果是多个value时,按照从左到右的次序插。返回插入元素的个数
lpush lst.user www.godeye.org   #插入一个元素

2.lrange
语法:lrange key start stop
解释:获取指定开始和结束范围的一些列元素。0:表头,-1:表尾。如果stop指定的元素在start的左边,返回空列表
lrange lst.user -1 0

3.lset
语法:lset key index value
解释:设置列表指定索引的值,如果指定索引不存在则报错
lset lst.user 2 www.godeye.org  #设置第三个元素为www.godeye.org

4.ltrim
语法:ltrim key start stop
解释:保留指定区域的元素,其他元素全部删除
ltrim lst.user 0 -2

5.rpop
语法:rpop key
解释:移除并返回表尾元素
rpop lst.user

6.llen
语法:llen key
解释:获取列表长度
llen lst.user

打赏  如对你有帮助,请我喝杯咖啡吧!