如何在 Java 中使用 Map、TreeMap 和 List?
How to use Map, TreeMap with List in Java?
如何转换以下数据结果
[a={x=0, y=43, z=57}, b={x=1, y=90, z=9}, c={x=1, y=83, z =16}]
进入
{x=[0,1,1], y=[43,90,83], z=[57,9,16]}
使用地图和树形图。
基本上,我遍历 a、b、c.. 然后在读取它的值时,我想按 Key(x)、values(0,1,1)、Key(y)、values( 43,90,83) 等等。
非常感谢您的帮助。
显然
Map<String, Map<String, Integer>> mapOfMaps = ...
TreeMap<String, List<Integer>> series = mapOfMaps.values().stream()
.map(Map::entrySet)
.flatMap(Set::stream)
.collect(Collectors.groupingBy(Entry::getKey, TreeMap::new,
Collectors.mapping(Entry::getValue, Collectors.toList())));
您不能使用地图转换数据。您将 'transformed data' 组织成一张地图。可以使用 String class.
中公开的方法来组织数据
可以安全地假设以下是您最后的字符串。
[a={x=0, y=43, z=57}, b={x=1, y=90, z=9}, c={x=1, y=83, z=16}]
使用StringAPI获取每一个设置的内容。 http://docs.oracle.com/javase/7/docs/api/java/lang/String.html 您可以查看 indexOf 或 split 或 substring 等方法。这有助于您将字符串分成 {.......}.
块
您现在必须遍历并识别 x、y、z 的整数值,找到它们后,您可以将它们添加到列表中。示例:ArrayList.
最后,将字符串 x、y、z 及其对应的 ArrayList 添加到 TreeMap。
如何转换以下数据结果
[a={x=0, y=43, z=57}, b={x=1, y=90, z=9}, c={x=1, y=83, z =16}]
进入
{x=[0,1,1], y=[43,90,83], z=[57,9,16]}
使用地图和树形图。
基本上,我遍历 a、b、c.. 然后在读取它的值时,我想按 Key(x)、values(0,1,1)、Key(y)、values( 43,90,83) 等等。
非常感谢您的帮助。
显然
Map<String, Map<String, Integer>> mapOfMaps = ...
TreeMap<String, List<Integer>> series = mapOfMaps.values().stream()
.map(Map::entrySet)
.flatMap(Set::stream)
.collect(Collectors.groupingBy(Entry::getKey, TreeMap::new,
Collectors.mapping(Entry::getValue, Collectors.toList())));
您不能使用地图转换数据。您将 'transformed data' 组织成一张地图。可以使用 String class.
中公开的方法来组织数据可以安全地假设以下是您最后的字符串。
[a={x=0, y=43, z=57}, b={x=1, y=90, z=9}, c={x=1, y=83, z=16}]
使用StringAPI获取每一个设置的内容。 http://docs.oracle.com/javase/7/docs/api/java/lang/String.html 您可以查看 indexOf 或 split 或 substring 等方法。这有助于您将字符串分成 {.......}.
块您现在必须遍历并识别 x、y、z 的整数值,找到它们后,您可以将它们添加到列表中。示例:ArrayList.
最后,将字符串 x、y、z 及其对应的 ArrayList 添加到 TreeMap。