如何在java中按结构元素对结构列表进行排序

use*_*802 6 java sorting

我有一个结构列表,我想根据结构的特定元素进行排序:

private class myStruct {

    public Boolean GUI;
    public float CallTime;
    public String ReqID;
    public String ReqGUID;
    public String Stereotype;
    public String StereotypeGUID;

}

private List<myStruct> DataList = new ArrayList<myStruct>();
Run Code Online (Sandbox Code Playgroud)

如何在没有硬编码的情况下通过元素"ReqID"对DataList进行排序?有可能使用Arrays.sort()吗?

Bri*_*new 0

您可以定义自己的比较器并使用Collections.sort(),传递该比较器。这样您就可以定义不同的比较器以使用不同的字段进行搜索。

或者,您的结构可以实现该Comparable接口并Collections.sort()可以使用它进行排序。这称为使用自然排序顺序,因为它对您的类来说是隐式的。

这是有关排序和排序的 Java 教程