jedis 中 zrangebyscore 与字符串 min 和 max 的行为

Behaviour of zrangebyscore with string min and max in jedis

Jedis中我想了解的函数的方法签名如下:

Set<String> zrangeByScore(String key,
                          String min,
                          String max,
                          int offset,
                          int count)

Redis 文档中有关于此方法的信息,其中包含双最小值和最大值,但我无法在任何地方找到任何关于它如何使用字符串最小值和最大值以及偏移量和计数的说明。

可以请我描述一下这个方法吗?

Jedis 库的源代码是开源的,因此您可以从 Github 查看它并自行查看。这是一个非常容易理解的库,所以我推荐它。

https://github.com/xetorthio/jedis/blob/master/src/main/java/redis/clients/jedis/Jedis.java

如果您遵循采用 double minmaxzrangeByScore 方法,库实际上会将 double 参数转换为 String s,在将 String 转换为 byte[] 并发送到 Redis 之前。采用 String minmax 的方法将它们直接转换为 byte[]。如果你看所有参数实际上发送到Redis作为byte[]

因此字符串版本与 double 版本完全相同(它仍然希望您使用数字作为最小值和最大值),它只是为了方便。