如何对List<PjtSelectMstrInfo> pjtSelectMstrInfoList =…按照PjtSelectMstrInfo中usrId,usrNameJp,usrNameEn的顺序排序
时间: 2024-10-16 21:04:06 浏览: 9
cas-auth-lua-nginx:在 NGINX 级别对 CAS 用户进行身份验证的 Lua 模块
要对`List<PjtSelectMstrInfo> pjtSelectMstrInfoList`按照`usrId`,`usrNameJp`,`usrNameEn`的顺序排序,可以使用Java 8的`Comparator`接口。假设`PjtSelectMstrInfo`类有这些属性:
```java
public class PjtSelectMstrInfo {
private String usrId;
private String usrNameJp;
private String usrNameEn;
// getters and setters...
}
```
你可以创建一个自定义的比较器`Comparator`来实现这个排序:
```java
import java.util.Comparator;
public class CustomComparator implements Comparator<PjtSelectMstrInfo> {
@Override
public int compare(PjtSelectMstrInfo o1, PjtSelectMstrInfo o2) {
// 首先按usrId排序
int idCompare = Integer.compare(o1.getUsrId(), o2.getUsrId());
// 如果id相同,再按usrNameJp排序
if (idCompare == 0) {
int nameJpCompare = o1.getUsrNameJp().compareTo(o2.getUsrNameJp());
return nameJpCompare;
}
// 如果nameJp也相同,最后按usrNameEn排序
return o1.getUsrNameEn().compareTo(o2.getUsrNameEn());
}
}
// 使用自定义比较器排序
Collections.sort(pjtSelectMstrInfoList, new CustomComparator());
```
这样,`pjtSelectMstrInfoList`就会按照`usrId`、`usrNameJp`和`usrNameEn`的顺序进行升序排列。
阅读全文