我想一个列表排序,然后组的元素。问题是,当我对元素进行分组时,排序顺序就是折腾。 下面是我的一段代码如何使用分组和排序一起JAVA 8
listOfRooms.stream().sorted(Comparator.comparing(DXARoom::getStayAverageRate))
.collect(Collectors.groupingBy(DXARoom::getRoomInfoLabel));
这是我的输出是如何来对上述码
{
"Presidential suite": [
{
"roomInfoLabel": "Presidential suite",
"stayAverageRate": "1696.0",
},
{
"roomInfoLabel": "Presidential suite",
"stayAverageRate": "1729.0",
},
"Premier king room": [
{
"roomInfoLabel": "Premier king room",
"stayAverageRate": "370.0",
},
{
"roomInfoLabel": "Premier king room",
"stayAverageRate": "377.0",
},
}
基本上,我的要求是首先显示最便宜的房间类型。 因此,输出应首先由总理国王室分组,因为它具有最便宜的370英镑的房间。
预期输出 - >
{
"Premier king room": [
{
"roomInfoLabel": "Premier king room",
"stayAverageRate": "370.0",
},
{
"roomInfoLabel": "Premier king room",
"stayAverageRate": "377.0",
},
"Presidential suite": [
{
"roomInfoLabel": "Presidential suite",
"stayAverageRate": "1696.0",
},
{
"roomInfoLabel": "Presidential suite",
"stayAverageRate": "1729.0",
}
}
能否请你建议我任何其他方法或什么是错与上面的实现,任何新的想法,欢迎。
https://开头计算器.com/a/28765069/2711488 – Holger