存储list ArrayList使用数组方式:查询快,删除增加元素较慢。 LinkedList使用双向链接方式 :出入删除速度快 双向链表中添加数据 双向链表中删除数据 存储list常用命令 两端添加、查看列表、两端弹出、获取列表元素个数、扩展命令
Microsoft Windows [ 版本 10.0 .16299 .125 ]
( c) 2017 Microsoft Corporation。保留所有权利。
C:\Users\YUANRUI> redis- cli
127.0 .0 .1 :6379 > lpush mylist a b c
( integer ) 3
127.0 .0 .1 :6379 > lpush mylist 1 2 3
( integer ) 6
127.0 .0 .1 :6379 > rpush mylist2 a b c
( integer ) 3
127.0 .0 .1 :6379 > rpush mylist2 1 2 3
( integer ) 6
127.0 .0 .1 :6379 > lrange mylist 0 5
1 ) "3"
2 ) "2"
3 ) "1"
4 ) "c"
5 ) "b"
6 ) "a"
127.0 .0 .1 :6379 > lrange mylist2 0 - 1
1 ) "a"
2 ) "b"
3 ) "c"
4 ) "1"
5 ) "2"
6 ) "3"
127.0 .0 .1 :6379 > lrange mylist2 0 - 2
1 ) "a"
2 ) "b"
3 ) "c"
4 ) "1"
5 ) "2"
127.0 .0 .1 :6379 > lpop mylist
"3"
127.0 .0 .1 :6379 > lrange mylist 0 - 1
1 ) "2"
2 ) "1"
3 ) "c"
4 ) "b"
5 ) "a"
127.0 .0 .1 :6379 > rpop mylist2
"3"
127.0 .0 .1 :6379 > lrange mylist2 0 - 1
1 ) "a"
2 ) "b"
3 ) "c"
4 ) "1"
5 ) "2"
127.0 .0 .1 :6379 > llen mylist
( integer ) 5
127.0 .0 .1 :6379 > llen mylist2
( integer ) 5
127.0 .0 .1 :6379 > llen mylist3
( integer ) 0
127.0 .0 .1 :6379 > lpushx mylist x
( integer ) 6
127.0 .0 .1 :6379 > lrange mylist 0 - 1
1 ) "x"
2 ) "2"
3 ) "1"
4 ) "c"
5 ) "b"
6 ) "a"
127.0 .0 .1 :6379 > lpushx mylist3 x
( integer ) 0
127.0 .0 .1 :6379 > lpushx mylist2 y
( integer ) 6
127.0 .0 .1 :6379 > lrange mylist2 0 - 1
1 ) "y"
2 ) "a"
3 ) "b"
4 ) "c"
5 ) "1"
6 ) "2"
127.0 .0 .1 :6379 > lpush mylist 1 2 3
( integer ) 9
127.0 .0 .1 :6379 > lpush mylist3 1 2 3
( integer ) 3
127.0 .0 .1 :6379 > lpush mylist3 1 2 3
( integer ) 6
127.0 .0 .1 :6379 > lpush mylist3 1 2 3
( integer ) 9
127.0 .0 .1 :6379 > lrange mylist3 0 - 1
1 ) "3"
2 ) "2"
3 ) "1"
4 ) "3"
5 ) "2"
6 ) "1"
7 ) "3"
8 ) "2"
9 ) "1"
127.0 .0 .1 :6379 > lrem mylist3 2 3
( integer ) 2
127.0 .0 .1 :6379 > lrange mylist3 0 - 1
1 ) "2"
2 ) "1"
3 ) "2"
4 ) "1"
5 ) "3"
6 ) "2"
7 ) "1"
127.0 .0 .1 :6379 > lrem mylist3 - 2 1
( integer ) 2
127.0 .0 .1 :6379 > lrange mylist3 0 - 1
1 ) "2"
2 ) "1"
3 ) "2"
4 ) "3"
5 ) "2"
127.0 .0 .1 :6379 > lrem mylist3 0 2
( integer ) 3
127.0 .0 .1 :6379 > lrange mylist3 0 - 1
1 ) "1"
2 ) "3"
127.0 .0 .1 :6379 > lrange mylist 0 - 1
1 ) "3"
2 ) "2"
3 ) "1"
4 ) "x"
5 ) "2"
6 ) "1"
7 ) "c"
8 ) "b"
9 ) "a"
127.0 .0 .1 :6379 > lset mylist 3 mmm
OK
127.0 .0 .1 :6379 > lrange mylist 0 - 1
1 ) "3"
2 ) "2"
3 ) "1"
4 ) "mmm"
5 ) "2"
6 ) "1"
7 ) "c"
8 ) "b"
9 ) "a"
127.0 .0 .1 :6379 > lpush mylist4 a b c
( integer ) 3
127.0 .0 .1 :6379 > lpush mylist4 a b c
( integer ) 6
127.0 .0 .1 :6379 > lrange mylist4 0 - 1
1 ) "c"
2 ) "b"
3 ) "a"
4 ) "c"
5 ) "b"
6 ) "a"
127.0 .0 .1 :6379 > linsert mylist4 before b 11
( integer ) 7
127.0 .0 .1 :6379 > lrange mylist4 0 - 1
1 ) "c"
2 ) "11"
3 ) "b"
4 ) "a"
5 ) "c"
6 ) "b"
7 ) "a"
127.0 .0 .1 :6379 > linsert mylist4 after b 22
( integer ) 8
127.0 .0 .1 :6379 > lrange mylist4 0 - 1
1 ) "c"
2 ) "11"
3 ) "b"
4 ) "22"
5 ) "a"
6 ) "c"
7 ) "b"
8 ) "a"
127.0 .0 .1 :6379 > lpush mylist5 1 2 4
( integer ) 3
127.0 .0 .1 :6379 > lpush mylist5 a b c
( integer ) 6
127.0 .0 .1 :6379 > lrange mylist5 0 - 1
1 ) "c"
2 ) "b"
3 ) "a"
4 ) "4"
5 ) "2"
6 ) "1"
127.0 .0 .1 :6379 > rpoplpush mylist5 mylist6
"1"
127.0 .0 .1 :6379 > lrange mylist6 0 - 1
1 ) "1"
127.0 .0 .1 :6379 >