问题描述
我想要实现的是我的Set与我的List具有相同的顺序,当我从List到Set赋值时,它正在浪费时间。这是我的工作:
// in here my array still showing same as my submited front end
List<ShipmentAddressGroupingDtDto> submitedShipmentAddressGroupingDtDto = shipmentAddressGroupingDto.getShipmentAddressGroupingDtDto();
//in here my array start changing,it's not the same order again as my object above
Set<ShipmentAddressGroupingDtDto> setShipmentAddressGroupingDtDto = new HashSet(submitedShipmentAddressGroupingDtDto);
List<ShipmentAddressGroupingDtDto> shipmentAddressGroupingDtDto = new ArrayList<ShipmentAddressGroupingDtDto>(setShipmentAddressGroupingDtDto);
这是我的submittedShipmentAddressGroupingDtDto的值:
[
"id": 0,"address": "Jl. Imam Bonjol","isActive": true,"partnerShipmentId": 1
],[
"id": 0,"partnerShipmentId": 2
],"partnerShipmentId": 4
],"address": "Jl. Imam Bonjolx","partnerShipmentId": 7
]
以及我在 setShipmentAddressGroupingDtDto 中在调试模式下看到的内容:
[
"id": 0,"partnerShipmentId": 7
],"partnerShipmentId": 4
]
如何防止“设置订单列表”?还是如果我不能阻止这种情况,如何将其作为提交的值进行排序?
解决方法
您可以使用LinkedHashSet来维护放入其中的元素的顺序。