Java List排序:自定义排序规则实现不同类型对象排序
<p>要将List<Object>根据某个元素排序,可以使用Comparator接口来实现自定义排序规则。Comparator接口有一个compare方法,可以根据指定的元素进行比较。</p>
<p>下面是一个使用Java语言对List<Object>进行排序的示例代码:</p>
<pre><code class="language-java">import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
class MyObject {
private int sortKey;
private String name;
public MyObject(int sortKey, String name) {
this.sortKey = sortKey;
this.name = name;
}
public int getSortKey() {
return sortKey;
}
public String getName() {
return name;
}
}
public class Main {
public static void main(String[] args) {
List<Object> list = new ArrayList<>();
list.add(new MyObject(2, 'Object 2'));
list.add(new MyObject(1, 'Object 1'));
list.add(new MyObject(3, 'Object 3'));
list.sort(Comparator.comparingInt(obj -> ((MyObject) obj).getSortKey()));
for (Object obj : list) {
System.out.println(((MyObject) obj).getName());
}
}
}
</code></pre>
<p>在上面的示例中,首先定义了一个MyObject类,该类包含一个sortKey和一个name属性。然后创建了一个List<Object>,将MyObject对象添加到该列表中。使用Comparator.comparingInt方法,将排序规则定义为根据sortKey属性进行比较。最后使用List的sort方法进行排序,最终输出排序后的结果。</p>
<p>输出结果为:</p>
<pre><code>Object 1
Object 2
Object 3
</code></pre>
原文地址: https://www.cveoy.top/t/topic/qDEi 著作权归作者所有。请勿转载和采集!