永发信息网

java 将list集合组合成字符串

答案:1  悬赏:70  手机版
解决时间 2021-01-29 13:35
java 将list集合组合成字符串
最佳答案
import java.util.ArrayList;
import java.util.List;
public class TestList {
public static void main(String[] args) {
// 准备数据//////////////////////////////////////////////
Element e1 = new Element();
e1.setId("e1");
Element e2 = new Element();
e2.setId("e2");
List list1 = new ArrayList();
list1.add(e1);
list1.add(e2);
Element e3 = new Element();
e3.setId("e3");
Element e4 = new Element();
e4.setId("e4");
List list2 = new ArrayList();
list2.add(e3);
list2.add(e4);
e1.setElements(list2);
Element e5 = new Element();
e5.setId("e5");
Element e6 = new Element();
e6.setId("e6");
List list3 = new ArrayList();
list3.add(e5);
list3.add(e6);
e3.setElements(list3);
// ///////////////////////////////////////////////////////////////
// 开始测试
StringBuilder buff = new StringBuilder();
listElements(list1, buff);
System.out.println(buff.toString());
}
// 核心方法 这种问题当然是使用递归
public static void listElements(List list, StringBuilder buff) {
// 递归返回条件
if (list == null || list.size() == 0) {
return;
}
// 存储下一层所有元素
List list2 = new ArrayList();
for (Element e : list) {
// 记录当前层所有元素
buff.append(e.getId()).append(",");
if (e.getElements() != null) {
// 把每个元素的下一层放到一个list中
list2.addAll(e.getElements());
}
}
// 递归调用
listElements(list2, buff);
}
}
class Element {
private String id;
private List elements;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public List getElements() {
return elements;
}
public void setElements(List elements) {
this.elements = elements;
}
}追问你这出的结果是e1,e2,e3,e4,e5,e6。顺序没问题了,我还需要加个分割符号,表示分割符里面是同级关系,结果应该是e1,e2|e3,e4|e5,e6,最后需要的是这种格式,递归的那个地方需要修改下
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
萌乐园(宁德福安)地址好找么,我有些事要过去
正品欧莱雅生产商是哪里?
小于6的所有正整数组成的集合?
宜便的意思是什么啊?知道的请说下!
芳草地教育(宁德福安)地址在哪,我要去那里办
我老公天天玩手机,晚上关灯了还要玩,我真的
算来离祖不成家,运吉如添锦上花,此算长生不等
怎样和拒绝加好友的人聊天!
几年来,山东各地实行“村级事务管理契约化”
别把秘密告诉风 风会吹片整个森林
何西少儿美术地址在什么地方,我要处理点事
一个圆柱形的茶叶罐,它的侧面积是30.25平方
按揭房购房合同和房产证复印件被偷了有什么后
官暇的意思是什么啊?知道的请说下!
1992年6月15号出生双子座幸运数字
推荐资讯
"你太萌了" 日文怎么说怎么写?(文字+罗马音
学车中途换教练对教练有影响吗?
艳新照相馆地址在什么地方,想过去办事
请问广技师专插本专业课计算机科学与技术难吗
海豚上门洗车店地址在什么地方,想过去办事
海王口服五维葡萄糖小孩能喝吗?
“是你还是你” 这是啥歌?
(老男孩)这首歌背后的故事是什么??
减肥10斤等于多少千卡
西昌市起点幼儿园地址在什么地方,我要处理点
女朋友从不主动牵我手~~WHY?
立适的意思是什么啊?知道的请说下!
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?