import java.util.HashMap;
import java.util.Map;
import java.util.Random;
public class NewTest {
public static void main(String[] args){
Map map = Map.of(
"1242", "A31_001", "2424", "A31_001", "3646", "A31_002");
System.out.println("原map" + map);
var groups = new HashMap>();
map.forEach((k, v) -> {
if (!groups.containsKey(v)) groups.put(v, new HashMap<>());
groups.get(v).put(k, v);
});
System.out.println("重组新map:" + groups);
// 给换成新随机id, 没必要但为满足要求
var newMap = new HashMap>();
var r = new Random();
groups.forEach((k, v) -> {
int id;
do id = r.nextInt();
while (newMap.containsKey(id));
newMap.put(id, v);
});
System.out.println("新随机生成ID:"+newMap);
}
}
JDK/Java 11的代码,结果同前贴...