Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
List Java-8关于内部对象的对象排序列表_List_Sorting_Java 8 - Fatal编程技术网

List Java-8关于内部对象的对象排序列表

List Java-8关于内部对象的对象排序列表,list,sorting,java-8,List,Sorting,Java 8,我有一个OBEJCT列表,如下所示: List<MyObject> myObjects = ... 列出myObjects=。。。 MyObject引用了另一个对象MyReferencedObject。 我将对MyReferencedObject的一个名为sortOrder(Integer)的字段中的MyObject列表进行排序。 是否有以性能方式执行此操作的性能可能性?您可以使其实现可比性(特别是如果此类比较不是一次性的,并且将重复使用) 然后打电话: Collections.

我有一个OBEJCT列表,如下所示:

List<MyObject> myObjects = ...
列出myObjects=。。。
MyObject引用了另一个对象MyReferencedObject。 我将对MyReferencedObject的一个名为sortOrder(Integer)的字段中的MyObject列表进行排序。
是否有以性能方式执行此操作的性能可能性?

您可以使其实现
可比性(特别是如果此类比较不是一次性的,并且将重复使用)

然后打电话:

Collections.sort(myObjects);
或使用lambda表达式定义顺序:

Collections.sort(myObjects, (o1, o2) ->
      o1.getReferencedObject().getSortOrder()
      .compareTo(o2.getReferencedObject().getSortOrder()));

非常感谢,第二个解决方案适合我(MyObject可以通过另一个字段进行比较)。谢谢您还可以使用Comparator::Comparating从getter函数派生一个比较器:Collections.sort(myObjects,Comparator.comparating(o->o.getReferencedObject().getSortOrder());