gpt4 book ai didi

java - 按两个实体依次对对象进行排序

转载 作者:行者123 更新时间:2023-12-03 07:19:20 28 4
gpt4 key购买 nike

我有一个包含以下变量(实体)的类:

Identifier  
Entry_Number
Rest_of_the_data

我想按如下方式对此类的实例进行排序:
Identifier 对实例进行排序变量,然后对于具有相同 Identifier 的实例值,按 Entry_Number 对它们进行排序变量。

我知道我可以用这些实体之一作为键来实现 Comparable,但我不知道如何对两个实体按顺序进行排序。
即按Identifier排序后当我按 Entry_Number 排序时,不应干扰初始排序 - 第二次排序应仅适用于具有相同 Identifier 的实例。值。

因此,实际上,我希望能够作为“第二个关键”项目传递来解决关系。

最佳答案

您可以像比较一个字段一样轻松地比较两个字段。创建 Comparator<YourClass> instance具有以下compare()方法:

public int compare(YourClass a, YourClass b) {
int idDiff = a.getIdentifier().compareTo(b.getIdentifier());
if (idDiff != 0) {
return idDiff;
}
return a.getEntryNumber().compareTo(b.getEntryNumber());
}

如果您有空值或基元,则必须进行调整。

关于java - 按两个实体依次对对象进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26256812/

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