正如JavaSE集合体系中的List一样,元素有序存储排着序!
get SpringBoot:Redis:String:Key:V2
LPUSH myList a b c d e f
LRANGE myList 0 6:取出指定范围的元素
LINDEX myList 0
LINDEX myList 1
BRPOP myList 1
LLEN myList
LPOP myList:从左边弹出元素
LREM myList:从左边移除元素
@Test
public void method2(){
log.info("--开始列表List测试--");
final String key = "SpringBootRedis:List:10010:V2";
redisTemplate.delete(key);
ListOperations<String, String> listOperations = redisTemplate.opsForList();
//往列表中添加元素
listOperations.leftPush(key, "10");
listOperations.leftPush(key, "11");
listOperations.leftPush(key, "12");
List<String> list = Lists.newArrayList("13", "14");
listOperations.leftPushAll(key, list);
log.info("--当前列表元素个数:{}", listOperations.size(key));
log.info("--当前列表所有元素:{}",listOperations.range(key, 0L, listOperations.size(key)));
log.info("--当前列表中下标为0的元素:{}", listOperations.index(key, 0L));
log.info("--当前列表中下标为4的元素:{}", listOperations.index(key, 4L));
log.info("--当前列表中下标为10的元素:{}", listOperations.index(key, 10L));
String value = listOperations.rightPop(key);
log.info("--当前列表从右边弹出来--:{}", value);
listOperations.set(key, 0L, "10010");
log.info("--修改列表中下标为0的元素:{}", listOperations.index(key, 0L));
log.info("--当前列表元素变更为:{}", listOperations.index(key,0L));
listOperations.remove(key, 0L, "13");
log.info("--移除value=13的元素后当前列表的所有元素:{}", listOperations.range(key, 0L, listOperations.size(key)));
}
运行后的结果