Mur*_*ali -1 java sorting java-8
我有一个Set<MultiAdminComponent> rootItems = new HashSet<>();哈希集。在这个我有我所有的屏幕。
在我的HashSet我将拥有我所有的行。我想MultiAdminComponent根据rowId.
这是 MultiAdminComponent
public class MultiAdminComponent {
private String componentName;
private String componentIdentification;
private String componentType;
private String componentState;
private String componentUrl;
private String componentId;
private String rowId;
private List<MultiAdminComponent> items;
private int componentStateId;
private int ctastatus;
private String actionId;
private String actionToPerform;
private int orderNumber;
private int ctarevision;
Run Code Online (Sandbox Code Playgroud)
如何根据MultiAdminComponentbean 中的RowId 进行排序
由于您使用的是 Java 8,因此您可以利用Stream API和Comparator.comparing():
List<MultiAdminComponent> sortedList = rootItems.stream()
.sorted(Comparator.comparing(MultiAdminComponent::getRowId))
.collect(Collectors.toList()); // collect to whatever you want
Run Code Online (Sandbox Code Playgroud)
请记住,HashSet它不维护顺序,因此您应该将排序结果保留在其他一些数据结构中。
请记住,这不会对您进行排序,Set这将返回List自然排序的MultiAdminComponents 并且您需要捕获此操作的结果。