ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# Kotlin 程序:按属性对自定义对象的`ArrayList`进行排序 > 原文: [https://www.programiz.com/kotlin-programming/examples/sort-custom-objects-property](https://www.programiz.com/kotlin-programming/examples/sort-custom-objects-property) #### 在此程序中,您将学习按照 Kotlin 中给定属性对自定义对象的`ArrayList`进行排序。 ## 示例:按属性对自定义对象的`ArrayList`进行排序 ```kt import java.util.* fun main(args: Array<String>) { val list = ArrayList<CustomObject>() list.add(CustomObject("Z")) list.add(CustomObject("A")) list.add(CustomObject("B")) list.add(CustomObject("X")) list.add(CustomObject("Aa")) var sortedList = list.sortedWith(compareBy({ it.customProperty })) for (obj in sortedList) { println(obj.customProperty) } } public class CustomObject(val customProperty: String) { } ``` 运行该程序时,输出为: ```kt A Aa B X Z ``` 在上面的程序中,我们定义了一个`CustomObject`类,它带有`String`属性,即`customProperty`。 在`main()`方法中,我们创建了以 5 个对象初始化的自定义对象`list`的`ArrayList`。 为了使用属性对列表进行排序,我们使用`list`的`sortedWith()`方法。`sortedWith()`方法采用比较器`compareBy`,该比较器比较每个对象的`customProperty`并将其排序。 然后将已排序的列表存储在变量`sortedList`中。 这里是等效的 Java 代码: [Java 程序:通过属性对自定义对象的`ArrayList`进行排序](/java-programming/examples/sort-custom-objects-property "Java program to sort an ArrayList of custom objects by property")。