我一直在搞乱Java 8 Stream API并遇到了一些我只能通过传统的for循环来做的事情.
给出一个嵌套的地图
{
    1999: {
             3: [23, 24, 25],
             4: [1, 2, 3]
          },
    2001: {
             11: [12, 13, 14],
             12: [25, 26, 27]
          }
}
Run Code Online (Sandbox Code Playgroud)
我该如何将其转化为
['23,3,1999', '24,3,1999', '25,3,1999', '1,4,1999', '2,4,1999', '3,4,1999', '12,11,2001', '13,11,2001', '14,11,2001', '25,12,2001', '26,12,2001', '27,12,2001']
Run Code Online (Sandbox Code Playgroud)
基本上我想要复制:
    Map<Integer, Map<Integer, List<Integer>>> dates...
    List<String> flattened = new ArrayList<>();
    for (Integer key1 : map.keySet()) {
        for (Integer key2 : map.get(key1).keySet()) {
            for (Integer value : map.get(key1).get(key2)) {
                flattened.add(value + "," + key2 + "," + key1);
            } …Run Code Online (Sandbox Code Playgroud)