1. 程式人生 > 其它 >3、使用ListOperations操作redis(List列表)

3、使用ListOperations操作redis(List列表)

文章來源:https://www.cnblogs.com/shiguotao-com/p/10560354.html

方法 c引數 s說明
List<V> range(K key, long start, long end);
K key:集合key 
long start:起始位置
long end:結束位置
獲取集合中指定範圍的元素
void trim(K key, long start, long end);
K key:集合key 
long start:起始位置
long end:結束位置

修剪集合中指定範圍的元素

這裡的修剪的意思就是把start到end之間的集合資料保留,其餘的全部刪除

Long size(K key);
K key:集合key 
獲取集合的長度
Long leftPush(K key, V value);
K key:集合key
V value:key對應的值
向集合中新增一個元素。從左到右
Long leftPushAll(K key, V... values);
K key:集合key
V... values:key對應的值
向集合中新增一個或多個元素,從左到右
Long leftPushAll(K key, Collection<V> values);
K key:集合key
Collection<V> values:key對應的值集合
向集合中新增一個或多個元素,元素以集合的方式存在,從左到右
Long leftPushIfPresent(K key, V value);
K key:集合key V 
value:key對應的值
僅當集合存在時,向集合中新增一個元素,從左到右
Long leftPush(K key, V pivot, V value);
K key:集合key
V pivot:集合中已存在的元素
V value:一個新元素

向集合中新增一個元素,該元素新增在某一個已經存在的元素前邊

pivot代表已經存在的元素,value代表新元素

如:[1,2,3] 這是當前集合中的所有元素,現在向這個集合中新增一個元素6

並且將6新增到2的前邊,這時方法的引數 pivot則為2,value為6

注:搜尋順序是從左往右

Long rightPush(K key, V value);
K key:集合key V 
value:key對應的值
向集合中他新增一個新元素,從右往左
Long rightPushAll(K key, V... values);
K key:集合key
V... values:key對應的值
向集合中新增一個或多個新元素,從右往左
Long rightPushAll(K key, Collection<V> values);
K key:集合key
Collection<V> values:key對應的值集合
向集合中新增一個或多個元素,元素以集合的方式存在,從右到左
Long rightPushIfPresent(K key, V value);
K key:集合key V 
value:key對應的值
僅當集合存在時,向集合中新增一個元素,從右到左
Long rightPush(K key, V pivot, V value);
K key:集合key
V pivot:集合中已存在的元素
V value:一個新元素

向集合中新增一個元素,該元素新增在某一個已經存在的元素前邊

pivot代表已經存在的元素,value代表新元素

如:[1,2,3] 這是當前集合中的所有元素,現在向這個集合中新增一個元素6

並且將6新增到2的前邊,這時方法的引數 pivot則為2,value為6

注:搜尋順序是從右到左

void set(K key, long index, V value);
K key:集合key
long index:索引
V value:key對應的值
向集合中指定索引下新增一個新元素,並覆蓋當前集合中指定位置的值
Long remove(K key, long count, Object value);
K key:集合key
long count:數量
Object value:key對應的值

刪除集合中的值,因為list中允許重複資料存在,所以可能有多個相同的

元素存在同一個集合中,這是可用count引數選擇性刪除數量

V index(K key, long index);
K key:集合key
long index:索引
根據索引獲取集合中的元素
V leftPop(K key);
K key:集合key
刪除集合中所有的元素,並返回集合總第一個元素,從左往右
V leftPop(K key, long timeout, TimeUnit unit);
K key:集合key 
long timeout:連線超時時長
TimeUnit unit:超時時間單位

刪除集合中所有的元素,並返回集合總第一個元素;從左往右

注:以上一個方法,具體區別沒有實際驗證過,如果有涉及此處的大佬,歡迎評論區解答

V rightPop(K key);
K key:集合key
刪除集合中所有的元素,並返回集合總最後一個元素,從右往左
V rightPop(K key, long timeout, TimeUnit unit);
K key:集合key 
long timeout:連線超時時長
TimeUnit unit:超時時間單位

刪除集合中所有的元素,並返回集合總最後一個元素,從右往左

注:以上一個方法,具體區別沒有實際驗證過,如果有涉及此處的大佬,歡迎評論區解答

V rightPopAndLeftPush(K sourceKey, K destinationKey);
K sourceKey:原集合key 
K destinationKey:目標集合key
在原集合中刪除最後一個元素,新增到目標幾何中的頭部(新增順序是從左往右)
V rightPopAndLeftPush(K sourceKey, K destinationKey, long timeout, TimeUnit unit);
K sourceKey:原集合key 
K destinationKey:目標集合key
long timeout:連線超時時長
TimeUnit unit:超時時間單位

在原集合中刪除最後一個元素,新增到目標幾何中的頭部(新增順序是從左往右)

注:以上一個方法,具體區別沒有實際驗證過,如果有涉及此處的大佬,歡迎評論區解答

人生很多煩惱,是因為想得太多,做得太少