我有这个流
jedis.lrange("users", 0, -1).stream()
.map(user -> user.split(":"))
.collect(Collectors.groupingBy(
user -> user[0],
Collectors.toMap(a -> a[1], a2 -> a2[2])
));
返回 Map<String, Map<String, String>>
但我想得到 Map<UUID, Map<String, Long>>
索引 0 应转换为 UUID,1 转换为 String,2 转换为 Long。我该怎么做?
最佳答案
您是否考虑过尝试解析要转换的字符串?大致如下:
Map<UUID, Map<String, Long>> groupedNestedMap = jedis.lrange("users", 0, -1)
.stream()
.map(user -> user.split(":"))
.collect(Collectors.groupingBy(user -> UUID.fromString(user[0]),
Collectors.toMap(a -> a[1], a2 -> Long.parseLong(a2[2]))));
关于java - 使用分割字符串中的新对象类型创建嵌套映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58476270/