java - 将Set <byte []>转换为List <String>

标签 java redis

我在应用程序的内存数据库中使用Redis。我们使用sAdd方法向集合中添加一些字符串值,并使用smembers方法从集合中获取值。此方法返回Set 。我需要将此设置转换为String列表。我尝试了以下方法,但无法正常工作。

List<String> list = Arrays.asList((servKeys)).toArray();

最佳答案

您可以将Base64编码器与Stream API结合使用:

List<String> list = servKeys.stream()
    .map(bytes -> Base64.getEncoder().encodeToString(bytes))
    .collect(Collectors.toList());
除了Base64之外,您还可以使用new String(bytes, StandardCharsets.UTF_8)
这取决于byte[]是哪种数据。上面的代码假定使用纯文本,但是,您可以轻松调整行为。

关于java - 将Set <byte []>转换为List <String>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64459869/

相关文章:

redis - 多个redis主复制

redis - StackExchange.Redis 事务方法卡住

redis - Jedis如何使用套接字连接到redis服务器?

java - 找到两个线性等式成立的整数集

Java JPanels 在框架中不可见

java - 矩形碰撞检测算法半工作

java - Orika 响应(包装)对象中实体列表到 DTO 列表的数据映射

Django 缓存用户的个人资料

集群模式下的 Redis 多行为

java - 从 Android 中的时间戳获取日期名称