gpt4 book ai didi

java - 如何在java中的流API中应用if/else逻辑?

转载 作者:行者123 更新时间:2023-12-01 19:37:53 26 4
gpt4 key购买 nike

我有列表 SortCriteria 对象。对象包含的属性是 sortColumnsortAscending。如果 sortAscendingtrue 我需要迭代列表,我需要添加 "ASC" 否则我需要添加 "DESC"

我尝试获取流升序列表和流降序列表并合并。

JSON:

"sort_criteria": [{

"sortAscending": true,

"sortColumn": "Category"

}]

JAVA 逻辑:

List<SortCriteria> listOfSortCriteria=webQueryRequest.getSortCriteria();
List<SortCriteria> listOfAscending=listOfSortCriteria.stream().filter(e->e.getSortAscending().equals("true")).collect(Collectors.toList());
List<SortCriteria> listOfDescending=listOfSortCriteria.stream().filter(e->e.getSortAscending().equals("false")).collect(Collectors.toList());
orderByQuery=ORDER_BY+listOfAscending.stream().map(e->e.getSortColumn()+ " "+"ASC").collect(Collectors.joining(","))+","+listOfDescending.stream().map(e->e.getSortColumn()+" "+"DESC").collect(Collectors.joining(","));

我不想一次性获取流升序列表和降序列表流并进行合并,而是需要最终构造的结果。

最佳答案

无论原始问题如何,顺序列的顺序都很重要。通过分为升序和降序列,您可以更改顺序列的顺序!
因此,您需要做的是流式传输原始列表并添加列 - 每个列都有自己的方向:

orderByQuery = ORDER_BY + 
listOfSortCriteria.stream().map(e->e.getSortColumn() + " " + (e->e.getSortAscending().equals("true") ? "ASC":"DESC"))
.collect(Collectors.joining(","));

关于java - 如何在java中的流API中应用if/else逻辑?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56685216/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com