RedisTemplate类-opsForList 列表操作api

1、leftPush(K key, V value)
  在变量左边添加元素值。
redisTemplate.opsForList().leftPush("list","a");  
redisTemplate.opsForList().leftPush("list","b");  
redisTemplate.opsForList().leftPush("list","c");  


2、index(K key, long index)
  获取集合指定位置的值。
String listValue = redisTemplate.opsForList().index("list",1) + "";  
System.out.println(listValue);  
 
 
3、range(K key, long start, long end)
  获取指定区间的值。
List<Object> list =  redisTemplate.opsForList().range("list",0,-1);  
System.out.println(list);  


4、leftPush(K key, V pivot, V value)
  把最后一个参数值放到指定集合的第一个出现中间参数的前面,如果中间参数值存在的话。
redisTemplate.opsForList().leftPush("list","a","n");  
list =  redisTemplate.opsForList().range("list",0,-1);  
System.out.println(list);  
 
 
5、leftPushAll(K key, V... values)
  向左边批量添加参数元素。
redisTemplate.opsForList().leftPushAll("list","w","x","y");  
list =  redisTemplate.opsForList().range("list",0,-1);  
System.out.println(list);  
 
 
6、leftPushAll(K key, Collection<V> values)
   以集合的方式向左边批量添加元素。
List newList = new ArrayList();  
newList.add("o");  
newList.add("p");  
newList.add("q");  
redisTemplate.opsForList().leftPushAll("list",newList);  
list =  redisTemplate.opsForList().range("list",0,-1);  
System.out.println(list);  
 
 
7、leftPushIfPresent(K key, V value)
  如果存在集合则添加元素。
redisTemplate.opsForList().leftPushIfPresent("presentList","o");  
list =  redisTemplate.opsForList().range("presentList",0,-1);  
System.out.println(list);  
 
 
8、rightPush(K key, V value)
   向集合最右边添加元素。
redisTemplate.opsForList().rightPush("list","w");  
list =  redisTemplate.opsForList().range("list",0,-1);  
System.out.println(list);  
 
 
9、rightPush(K key, V pivot, V value)
   向集合中第一次出现第二个参数变量元素的右边添加第三个参数变量的元素值。
redisTemplate.opsForList().rightPush("list","w","r");  
list =  redisTemplate.opsForList().range("list",0,-1);  
System.out.println(list);  
 
 
10、rightPushAll(K key, V... values)
   向右边批量添加元素。
redisTemplate.opsForList().rightPushAll("list","j","k");  
list =  redisTemplate.opsForList().range("list",0,-1);  
System.out.println(list);  
 
 
11、rightPushAll(K key, Collection<V> values)
   以集合方式向右边添加元素。
newList.clear();  
newList.add("g");  
newList.add("h");  
redisTemplate.opsForList().rightPushAll("list",newList);  
list =  redisTemplate.opsForList().range("list",0,-1);  
System.out.println(list);  
 
 
12、rightPushIfPresent(K key, V value)
  向已存在的集合中添加元素。
redisTemplate.opsForList().rightPushIfPresent("presentList","d");  
list =  redisTemplate.opsForList().range("presentList",0,-1);  
System.out.println(list);  


13、size(K key)
  获取集合长度。
long listLength = redisTemplate.opsForList().size("list");  
System.out.println(listLength);  


14、leftPop(K key)
  移除集合中的左边第一个元素。
Object popValue = redisTemplate.opsForList().leftPop("list");  
System.out.print("移除的元素是:" + popValue);  
list =  redisTemplate.opsForList().range("list",0,-1);  
System.out.println(",剩余的元素是:" + list);  
 
 
15、leftPop(K key, long timeout, TimeUnit unit)
  移除集合中左边的元素在等待的时间里,如果超过等待的时间仍没有元素则退出。
popValue = redisTemplate.opsForList().leftPop("presentList",1, TimeUnit.SECONDS);  
System.out.print("移除的元素是:" + popValue);  
list =  redisTemplate.opsForList().range("presentList",0,-1);  
System.out.println(",剩余的元素是:" + list);  


16、rightPop(K key)
  移除集合中右边的元素。
popValue = redisTemplate.opsForList().rightPop("list");  
System.out.print("移除的元素是:" + popValue);  
list =  redisTemplate.opsForList().range("list",0,-1);  
System.out.println(",剩余的元素是:" + list);  
 
 
17、rightPop(K key, long timeout, TimeUnit unit)
  移除集合中右边的元素在等待的时间里,如果超过等待的时间仍没有元素则退出。
popValue = redisTemplate.opsForList().rightPop("presentList",1, TimeUnit.SECONDS);  
System.out.print("移除的元素是:" + popValue);  
list =  redisTemplate.opsForList().range("presentList",0,-1);  
System.out.println(",剩余的元素是:" + list); 

 
18、rightPopAndLeftPush(K sourceKey, K destinationKey)
  移除集合中右边的元素,同时在左边加入一个元素。
popValue = redisTemplate.opsForList().rightPopAndLeftPush("list","12");  
System.out.print("移除的元素是:" + popValue);  
list =  redisTemplate.opsForList().range("list",0,-1);  
System.out.println(",剩余的元素是:" + list);  


19、rightPopAndLeftPush(K sourceKey, K destinationKey, long timeout, TimeUnit unit)
  移除集合中右边的元素在等待的时间里,同时在左边添加元素,如果超过等待的时间仍没有元素则退出。
popValue = redisTemplate.opsForList().rightPopAndLeftPush("presentList","13",1,TimeUnit.SECONDS);  
System.out.println("移除的元素是:" + popValue);  
list =  redisTemplate.opsForList().range("presentList",0,-1);  
System.out.print(",剩余的元素是:" + list); 

 
20、set(K key, long index, V value)
  在集合的指定位置插入元素,如果指定位置已有元素,则覆盖,没有则新增,超过集合下标+n则会报错。
redisTemplate.opsForList().set("presentList",3,"15");  
list =  redisTemplate.opsForList().range("presentList",0,-1);  
System.out.print("通过set(K key, long index, V value)方法在指定位置添加元素后:" + list);  


21、remove(K key, long count, Object value)
  从存储在键中的列表中删除等于值的元素的第一个计数事件。count> 0:删除等于从左到右移动的值的第一个元素;count< 0:删除等于从右到左移动的值的第一个元素;count = 0:删除等于value的所有元素。
long removeCount = redisTemplate.opsForList().remove("list",0,"w");  
list =  redisTemplate.opsForList().range("list",0,-1);  
System.out.println("移除元素数量:" + removeCount);  
System.out.println(",剩余的元素:" + list);  


22、trim(K key, long start, long end)
  截取集合元素长度,保留长度内的数据。
redisTemplate.opsForList().trim("list",0,5);  
list =  redisTemplate.opsForList().range("list",0,-1);  
System.out.println("截取后剩余元素:" + list); 

 

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值