1 redis从左往右,第一位是0,从右往左第一位是-1。
2 range方法是从左往右的
(1)lrange mylist 0 -1是指从左边第一位到最后一位(右边第一位)
(2)lrange mylist 0 -2是从左边第一位到倒数第二位
(3)如果元素有2个,lrange mylist 0 -3就会返回空,因为-3是倒数第三位
2 redis的范围一般是包含边界值的
3 redis感觉就像java方法变成了指令一样,命令名称也像是方法名
4 单个数字 大于0 就是从头到尾找,数字小于0就是从尾到头找




1 set
set与之前是一样的,如果key不存在,get会返回nil

set key value 如果key是之前存在的,就会起到修改作用

2 setnx
setnx key value 类似于java的set类型要求,只能添加不存在的key。如果添加存在的,就会返回0


+3 mset
可以一次添加多个键值对,有点像往map最后加新map

4 msetnx
setnx的升级版,在原有setnx基础上,加上可以添加多个键值对的条件。是原子操作,不允许部分成功

5 getset
如命名所指,取得目前key对应值回显,然后将其设置为现有值

若原有key不存在,则会新建,且返回nil

6 mget
一次获取多个key值

7 getrange
值要从小往大取,如果取值超了就取到末尾即可,如10-100这组
负数是从右往左取,最右边是-1

sdiff是差集合,是减法。sunion是并集是加法,sinter是交集,是两个圆圈重合部分。
