因此,Redis 将 zrange(和相关的排序集命令)指定为 ORDERED 的结果集(可能是没有重复的列表?)。
为什么 Jedis(官方和推荐的 REDIS 客户端)上的 zrange(和相关 API)返回一个 Set?根据定义,哪个没有排序的概念?
这直接违反了 redis 操作的语义。
这是 zrange jedis 2.0.0 的实现:
public Set<byte[]> zrange(final byte[] key, final int start, final int end) {
checkIsInMulti();
client.zrange(key, start, end);
final List<byte[]> members = client.getBinaryMultiBulkReply();
return new LinkedHashSet<byte[]>(members);
}
Jedis贡献者,你打算修复它吗?