public static class RedisUtils.ZSetOps extends Object
| 构造器和说明 |
|---|
ZSetOps() |
| 限定符和类型 | 方法和说明 |
|---|---|
static long |
zAdd(String key,
Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> entries)
批量添加entry
|
static boolean |
zAdd(String key,
String item,
double score)
向(key对应的)zset中添加(item, score)
注: item为entryKey成员项, score为entryValue分数值。
|
static long |
zCount(String key,
double minScore,
double maxScore)
统计(key对应的zset中)score处于[minScore, maxScore]中的item的个数
|
static double |
zIncrementScore(String key,
String item,
double delta)
增/减 (key对应的zset中,)item的分数值
|
static long |
zIntersectAndStore(String key,
Collection<String> otherKeys,
String storeKey)
获取多个(key对应的)ZSet的交集, 并将结果add到storeKey对应的ZSet中。
|
static long |
zIntersectAndStore(String key,
String otherKey,
String storeKey)
获取两个(key对应的)ZSet的交集, 并将结果add到storeKey对应的ZSet中。
|
static Set<Object> |
zRange(String key,
long start,
long end)
根据索引位置, 获取(key对应的)zset中排名处于[start, end]中的item项集
注: 不论是使用正向排名,还是使用反向排名, 使用此方法时, 应保证 startIndex代表的元素的
位置在endIndex代表的元素的位置的前面, 如:
示例一: RedisUtil.ZSetOps.zRange("name", 0, 2);
示例二: RedisUtil.ZSetOps.zRange("site", -2, -1);
示例三: RedisUtil.ZSetOps.zRange("foo", 0, -1);
注: 若key不存在, 则返回空的集合。
|
static Set<Object> |
zRangeByScore(String key,
double minScore,
double maxScore)
根据score, 获取(key对应的)zset中分数值处于[minScore, maxScore]中的item项集
注: 若key不存在, 则返回空的集合。
|
static Set<Object> |
zRangeByScore(String key,
double minScore,
double maxScore,
long offset,
long count)
根据score, 获取(key对应的)zset中分数值处于[minScore, maxScore]中的, score处于[minScore,
排名大于等于offset的count个item项
特别注意: 对于不是特别熟悉redis的人来说, offset 和 count最好都使用正数, 避免引起理解上的歧义。
|
static Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> |
zRangeByScoreWithScores(String key,
double minScore,
double maxScore)
获取(key对应的)zset中的所有score处于[minScore, maxScore]中的entry
|
static Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> |
zRangeByScoreWithScores(String key,
double minScore,
double maxScore,
long offset,
long count)
获取(key对应的)zset中, score处于[minScore, maxScore]里的、排名大于等于offset的count个entry
特别注意: 对于不是特别熟悉redis的人来说, offset 和 count最好都使用正数, 避免引起理解上的歧义。
|
static Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> |
zRangeWithScores(String key,
long start,
long end)
根据索引位置, 获取(key对应的)zset中排名处于[start, end]中的entry集
注: 不论是使用正向排名,还是使用反向排名, 使用此方法时, 应保证 startIndex代表的元素的
位置在endIndex代表的元素的位置的前面, 如:
示例一: RedisUtil.ZSetOps.zRange("name", 0, 2);
示例二: RedisUtil.ZSetOps.zRange("site", -2, -1);
示例三: RedisUtil.ZSetOps.zRange("foo", 0, -1);
注: 若key不存在, 则返回空的集合。
|
static long |
zRank(String key,
Object item)
返回item在(key对应的)zset中的(按score从小到大的)排名
注: 排名从0开始。
|
static long |
zRemove(String key,
Object... items)
从(key对应的)zset中移除项
注:若key不存在,则返回0
|
static long |
zRemoveRange(String key,
long startRange,
long endRange)
移除(key对应的)zset中, 排名范围在[startIndex, endIndex]内的item
注:默认的,按score.item升序排名, 排名从0开始
注: 类似于List中的索引, 排名可以分为多个方式:
从前到后(正向)的排名: 0、1、2...
|
static long |
zRemoveRangeByScore(String key,
double minScore,
double maxScore)
移除(key对应的)zset中, score范围在[minScore, maxScore]内的item
提示: 虽然删除范围包含两侧的端点(即:包含minScore和maxScore), 但是由于double存在精度问题,所以建议:
设置值时,minScore应该设置得比要删除的项里,最小的score还小一点
maxScore应该设置得比要删除的项里,最大的score还大一点
追注: 本人简单测试了几组数据,暂未出现精度问题。
|
static Set<Object> |
zReverseRange(String key,
long start,
long end)
获取时, 先按score倒序, 然后根据索引位置, 获取(key对应的)zset中排名处于[start, end]中的item项集
zRange(String, long, long) 只是zReverseRange这里会提前多一个倒序。 |
static Set<Object> |
zReverseRangeByScore(String key,
double minScore,
double maxScore)
获取时, 先按score倒序, 然后根据score, 获取(key对应的)zset中分数值处于[minScore, maxScore]中的item项集
zRangeByScore(String, double, double) 只是zReverseRangeByScore这里会提前多一个倒序。 |
static Set<Object> |
zReverseRangeByScore(String key,
double minScore,
double maxScore,
long offset,
long count)
获取时, 先按score倒序, 然后根据score, 获取(key对应的)zset中分数值处于[minScore, maxScore]中的,
score处于[minScore,排名大于等于offset的count个item项
zRangeByScore(String, double, double, long, long) 只是zReverseRangeByScore这里会提前多一个倒序 |
static Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> |
zReverseRangeByScoreWithScores(String key,
double minScore,
double maxScore)
获取时, 先按score倒序, 然后获取(key对应的)zset中的所有score处于[minScore, maxScore]中的entry
zRangeByScoreWithScores(String, double, double) 只是zReverseRangeByScoreWithScores
这里会提前多一个倒序 |
static Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> |
zReverseRangeWithScores(String key,
long start,
long end)
获取时, 先按score倒序, 然后根据索引位置, 获取(key对应的)zset中排名处于[start, end]中的entry集
zRangeWithScores(String, long, long) 只是zReverseRangeWithScores这里会提前多一个倒序 |
static long |
zReverseRank(String key,
Object item)
返回item在(key对应的)zset中的(按score从大到小的)排名
注: 排名从0开始。
|
static double |
zScore(String key,
Object item)
统计(key对应的)zset中指定item的score
|
static long |
zSize(String key)
统计(key对应的)zset中item的个数
注: 此方法等价于
zZCard(String) |
static long |
zUnionAndStore(String key,
Collection<String> otherKeys,
String storeKey)
获取两个(key对应的)ZSet的并集, 并将结果add到storeKey对应的ZSet中。
|
static long |
zUnionAndStore(String key,
String otherKey,
String storeKey)
获取两个(key对应的)ZSet的并集, 并将结果add到storeKey对应的ZSet中。
|
static Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> |
zWholeZSetEntry(String key)
获取(key对应的)zset中的所有entry
|
static Set<Object> |
zWholeZSetItem(String key)
获取(key对应的)zset中的所有item项
|
static long |
zZCard(String key)
统计(key对应的)zset中item的个数
注: 此方法等价于
zSize(String) |
public static boolean zAdd(String key, String item, double score)
key - 定位set的keyitem - 要往(key对应的)zset中添加的成员项score - item的分值public static long zAdd(String key, Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> entries)
key - 定位set的keyentries - 要添加的entrypublic static long zRemove(String key, Object... items)
key - 定位set的keyitems - 要移除的项集public static long zRemoveRange(String key, long startRange, long endRange)
key - 定位set的keystartRange - 开始项的排名endRange - 结尾项的排名public static long zRemoveRangeByScore(String key, double minScore, double maxScore)
key - 定位set的keyminScore - score下限(含这个值)maxScore - score上限(含这个值)public static double zIncrementScore(String key, String item, double delta)
key - 定位zset的keyitem - 项delta - 变化量(正 - 增, 负 - 减)public static long zRank(String key, Object item)
key - 定位zset的keyitem - 项public static long zReverseRank(String key, Object item)
key - 定位zset的keyitem - 项public static Set<Object> zRange(String key, long start, long end)
key - 定位zset的keystart - 排名开始位置end - 排名结束位置public static Set<Object> zWholeZSetItem(String key)
key - 定位zset的键zRange(String, long, long)public static Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> zRangeWithScores(String key, long start, long end)
zRange(String, long, long)类似,不过此方法返回的不是item集, 而是entry集key - 定位zset的keystart - 排名开始位置end - 排名结束位置public static Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> zWholeZSetEntry(String key)
key - 定位zset的键zRangeWithScores(String, long, long)public static Set<Object> zRangeByScore(String key, double minScore, double maxScore)
key - 定位zset的keyminScore - score下限maxScore - score上限public static Set<Object> zRangeByScore(String key, double minScore, double maxScore, long offset, long count)
key - 定位zset的keyminScore - score下限maxScore - score上限offset - 偏移量(即:排名下限)count - 期望获取到的元素个数public static Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> zRangeByScoreWithScores(String key, double minScore, double maxScore)
key - 定位zset的键minScore - score下限maxScore - score上限注: 若key不存在, 则返回空的集合。
注: 当[minScore, maxScore]的范围比实际zset中score的范围大时, 返回范围上"交集"对应的项集合。public static Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> zRangeByScoreWithScores(String key, double minScore, double maxScore, long offset, long count)
key - 定位zset的键minScore - score下限maxScore - score上限offset - 偏移量(即:排名下限)count - 期望获取到的元素个数public static Set<Object> zReverseRange(String key, long start, long end)
zRange(String, long, long) 只是zReverseRange这里会提前多一个倒序。public static Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> zReverseRangeWithScores(String key, long start, long end)
zRangeWithScores(String, long, long) 只是zReverseRangeWithScores这里会提前多一个倒序public static Set<Object> zReverseRangeByScore(String key, double minScore, double maxScore)
zRangeByScore(String, double, double) 只是zReverseRangeByScore这里会提前多一个倒序。public static Set<org.springframework.data.redis.core.ZSetOperations.TypedTuple<Object>> zReverseRangeByScoreWithScores(String key, double minScore, double maxScore)
zRangeByScoreWithScores(String, double, double) 只是zReverseRangeByScoreWithScores
这里会提前多一个倒序public static Set<Object> zReverseRangeByScore(String key, double minScore, double maxScore, long offset, long count)
zRangeByScore(String, double, double, long, long) 只是zReverseRangeByScore这里会提前多一个倒序public static long zCount(String key, double minScore, double maxScore)
key - 定位zset的keyminScore - score下限maxScore - score上限public static long zSize(String key)
zZCard(String)key - 定位zset的keypublic static long zZCard(String key)
zSize(String)key - 定位zset的keypublic static double zScore(String key, Object item)
key - 定位zset的keyitem - zset中的itempublic static long zUnionAndStore(String key, String otherKey, String storeKey)
key - 定位其中一个zset的键otherKey - 定位另外的zset的键storeKey - 定位(要把交集添加到哪个)set的keypublic static long zUnionAndStore(String key, Collection<String> otherKeys, String storeKey)
key - 定位其中一个set的键otherKeys - 定位其它set的键集storeKey - 定位(要把并集添加到哪个)set的keypublic static long zIntersectAndStore(String key, String otherKey, String storeKey)
key - 定位其中一个ZSet的键otherKey - 定位其中另一个ZSet的键storeKey - 定位(要把交集添加到哪个)ZSet的keypublic static long zIntersectAndStore(String key, Collection<String> otherKeys, String storeKey)
key - 定位其中一个set的键otherKeys - 定位其它set的键集storeKey - 定位(要把并集添加到哪个)set的keyCopyright © 2022. All rights reserved.