在redis中,可以把List 整成栈、列队、阻塞列队。
1、lpush key value [value ··· ]
将一个值或多个值插入到列表的头部,返回的是当前列表值的数量。
提示:每次插入都是从头部插入
2、rpush key value [value ··· ···]
在列表的尾部(末尾)插入。
3、lrange
获取集合中的全部元素,或某些元素。
4、lpop、rpop
从列表左边弹出一个元素、从列表右边弹出一个元素,返回的都是被弹出来的元素。
从左边弹出一个元素
从右边弹出一个元素
5、lindex key index
根据下标获取某个key
6、llen key
获取列表的长度
7、lrem key count value
删除列表中的某个key,可以指定key的数量,就是要删除几个key,对应的value值
8、rpoplpush source destination
把一个集合中的末尾元素,剪切到另一个集合 的头部。
提示:如果destination 这个集合没有,会创建一个,然后把剪切的元素放到新创建的集合中。
9、lset key index value
根据下标,来修改一个列表中的值
10、linsert key before | after sourceValue value
向一个值的前边或后边插入一个值
总结:
· 列表实际上是一个链表,在right和left都可以插入。
· 在两边插入或者 改动值时,效率最高的。如果中间元素,效率会低一些。
· 可以做消息队列、栈。