Java代码实现行列转换

本代码想要达到的效果

 测试完整代码如下(copy直接运行):

public class TestConvert {

public static void main(String[] args) {

ArrayList<Attribute> sourceList = new ArrayList<>();

for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
sourceList.add(new Attribute("name"+i, "value"+j, "code"+i, "data"+j));
}

}
ArrayList<HashMap<String, String>> maps = new ArrayList<>();

HashMap<String, Map<String,String>> temp = new HashMap<>();
sourceList.forEach(item->{
String name = item.getName();
String code = item.getCode();
String value = item.getValue();
String data = item.getData();
if(!temp.containsKey(name)){
HashMap<String, String> nodeMap = new HashMap<>();
nodeMap.put("cellName",name);
nodeMap.put("cellCode",code);
nodeMap.put(data,value);
temp.put(name,nodeMap);
maps.add(nodeMap);
}else {
HashMap<String, String> map = (HashMap<String, String>) temp.get(name);
map.put(data,value);
}
});
System.out.println(maps);
}


}

@Data
@AllArgsConstructor
@NoArgsConstructor
class Attribute{
private String name;
private String value;
private String code;
private String data;
}
posted @   狗艳艳花  阅读(48)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示