如何将java层中的数据汇编到一个字符串中

时间:2017-02-21 12:32:07

标签: java

我有一个包含3层的java对象。

该方案有几个部分:

public class Scenario {

private String scenarioId;
private List<Section> sectionList;

在每个部分中,有几个标签:

public class Section {

private String sectionName;
private List<String> labelList;

我想将3层数据组合成一个字符串,例如:

<Scenario>
  <section1>
     <label11 data>
     <label12 data>
  <section2>
     <label21 data>
     <label22 data>
  ...

我有以下代码来挑选每一层&#39;参数,但如何将其组合成一个字符串:

            String scenarioId = scenario.getScenarioId();
            List<Section> sectionList = scenario.getSectionList();
            sectionList.forEach(section -> {
                String sectionName = section.getSectionName();
                List<String> labelList = section.getLabelList();
                String data;

                if(!labelList.isEmpty()) {
                    data =copy.LabelData(labelList, input);
                }

            });

        return scenario;

1 个答案:

答案 0 :(得分:0)

这是另一种选择。

scenario.getSectionList()
    .filter(section -> !section.getLabelList().isEmpty())
    .forEach(section -> {
        append(section.getSectionName(), section.getLabelList())
    });

private final void append(String section, List<String> labels){
   sb.append("\t").append(section).append("\n");

   labels.forEach(label -> {
       sb.append("\t\t").append(label).append("\n");
   });
}