简体   繁体   English

在 Java Spring Boot 中将列表转换为分组列表

[英]Convert List to grouped list in Java Spring Boot

I want to convert the below list with attributes to group the similar group and concatenate the subgroup values as below expected output using Java Spring Boot.我想使用属性转换以下列表以对相似组进行分组,并使用 Java Spring Boot 将子组值连接为以下预期输出。 This is my code.这是我的代码。

    for (JuniorAreaSubgroup value : lstJuniorAreaSubgroup) {
        juniorAreaSubgroupMap.setJuniorArea(value.getJuniorArea());
        lstSubgroup.add(lstJuniorAreaSubgroup.stream().filter(value.getJuniorArea()) -> 
                String.join(",", value.getSubgroup()));
        juniorAreaSubgroupMap.setSubgroup(lstSubgroup);
        lstSubgroup.clear();
    }

- ——

[
{
    "group": "Tins",
    "subgroup": "G13AA"
},
{
    "group": "Tins",
    "subgroup": "G13AD"
},
{
    "group": "Cans",
    "subgroup": "G13DA"
},
{
    "group": "Cans",
    "subgroup": "G13DB"
},
{
    "group": "Cans",
    "subgroup": "G13DD"
}
]

Expected Output:预期输出:

[
{
    "group": "Tins",
    "subgroup": [“G13AA”, "G13AD”]
},
{
    "group": "Cans",
    "subgroup": [“G13DA”, "G13DB”, "G13DD”]
} 
]

Any help is appreciated.任何帮助表示赞赏。

Your data looks like JSON.您的数据看起来像 JSON。 This example will set up the data with proper Java objects instead:此示例将使用适当的 Java 对象设置数据:

public class Grouping {

    public class Person {
        String group;
        String subgroup;

        Person(String group, String subgroup){
            this.group = group;
            this.subgroup=subgroup;
        }
    }

    @Test
    public void test() {
        List<Person> list = new ArrayList<>();

        list.add(new Person("Tins", "G13AA"));
        list.add(new Person("Tins", "G13AD"));
        list.add(new Person("Cans", "G13DA"));
        list.add(new Person("Cans", "G13DB"));
        list.add(new Person("Cans", "G13DD"));

        Map<String, List<String>> result = list.stream()
              .collect(Collectors.groupingBy(p->p.group, Collectors.mapping(p->p.subgroup, Collectors.toList())));

        System.out.println(result);
    }

}

will result in:将导致:

{Cans=[G13DA, G13DB, G13DD], Tins=[G13AA, G13AD]}

转换 ArrayList 列表的最佳方法是什么<object>到自定义 object java11 Spring 引导 2.1<div id="text_translate"><p> 我有 ArrayList 对象列表,其中对象可以是文本、BigDecimal、Long</p><pre> List&lt;Object&gt; data = { {"date","prize1","cardsNumers","cardObtained","totalCards","anotherPrize"}, {"2020-05-01",435345.67,43,56,67,345345345}, {"2020-03-01",45656.2,34,67,23,456456}, {"2020-02-01",56565,34,56,67,878987} }</pre><p> arrayList 中的第 1、2、3 等对象是第 0 个 arraylist 中提到的每个字段的值。 在如下表中,</p><p> <a href="https://i.stack.imgur.com/Tmdw2.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Tmdw2.png" alt="在此处输入图像描述"></a></p><p> 我想从上面获取每个文件的总和并分配给下面自定义 Object 的同一字段,</p><pre> public class SumObject { private Date date; private BigDecimal sumPrize1; private BigDecimal sumCardsNumers; private long sumCardObtained; private long sumTotalCards; private long sumAnotherPrize; }</pre><p> 我通过遍历 List 中的 arrayList 来实现这一点,并通过 get(index) 方法获取值。 但我想知道是否有任何其他好的方法可以做到这一点。</p><p> 如果有人有任何建议,请发布答案或给我一个我可以阅读的文件的方向。</p><p> 提前致谢。</p></div></object> - what would be best way to convert List of ArrayList<Object> to a custom object java11 Spring boot 2.1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 转换列表<map<string, string> &gt; 到 Object 中 Java Spring 启动 ZF0B4A299C45171493AE3215D69D </map<string,> - Convert List<Map<String, String>> to Object in Java Spring boot jpa 将对象列表转换为 java 中的 JSON 数组 - Spring 启动 Z8A5DA52ED126421D8AAZA 测试 - Convert list of Objects to JSON Array in java - Spring Boot api testing Java Spring Boot: Swagger GET请求中的列表 - Java Spring Boot: Swagger GET List in the Request JSP 不会在 Spring Boot 2 中呈现 java 列表 - JSP does not render java list in Spring Boot 2 如何按 Java Spring Boot 中的字段对列表进行排序? - How to sort the list by fields in Java Spring Boot? 如何获得 java spring 引导中未列出的结果 - how to get the result not list in java spring boot 循环列表数据在 Java Spring Boot with Primefaces - Loop list data in Java Spring Boot with Primefaces 转换 ArrayList 列表的最佳方法是什么<object>到自定义 object java11 Spring 引导 2.1<div id="text_translate"><p> 我有 ArrayList 对象列表,其中对象可以是文本、BigDecimal、Long</p><pre> List&lt;Object&gt; data = { {"date","prize1","cardsNumers","cardObtained","totalCards","anotherPrize"}, {"2020-05-01",435345.67,43,56,67,345345345}, {"2020-03-01",45656.2,34,67,23,456456}, {"2020-02-01",56565,34,56,67,878987} }</pre><p> arrayList 中的第 1、2、3 等对象是第 0 个 arraylist 中提到的每个字段的值。 在如下表中,</p><p> <a href="https://i.stack.imgur.com/Tmdw2.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Tmdw2.png" alt="在此处输入图像描述"></a></p><p> 我想从上面获取每个文件的总和并分配给下面自定义 Object 的同一字段,</p><pre> public class SumObject { private Date date; private BigDecimal sumPrize1; private BigDecimal sumCardsNumers; private long sumCardObtained; private long sumTotalCards; private long sumAnotherPrize; }</pre><p> 我通过遍历 List 中的 arrayList 来实现这一点,并通过 get(index) 方法获取值。 但我想知道是否有任何其他好的方法可以做到这一点。</p><p> 如果有人有任何建议,请发布答案或给我一个我可以阅读的文件的方向。</p><p> 提前致谢。</p></div></object> - what would be best way to convert List of ArrayList<Object> to a custom object java11 Spring boot 2.1 将双精度列表转换为分组字符串 - Convert a double list to a grouped string 将线对列表转换为分组对列表 - Convert List of pairs into list of grouped pairs
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM