scala – 排序对象列表的最简单方法 - 代码日志

scala – 排序对象列表的最简单方法

我有一个类型为A的对象的列表。在第一次迭代中,我为每个对象分配一个双重值0< x < 1然后要根据它的x值对每个对象进行排序。 目前,我使用一个存储对象的包装类,并且它的x值作为可比较的列表。 是否有Scala提供的数据类型,可以让我的东西像:

 var result = new SortedList[Double, A]
 result.insert(x,a)
 result.insert(x1,a1)
 result.insert(x2,a2)

接着

  println(result.mkString)
您可以使用正常的Scala列表及其sortBy方法来实现这一点。这是一个简短的REPL会话,显示如何:

scala> class A(val value: Double) { override def toString = "A:" + value }
defined class A

scala> List(new A(6), new A(1), new A(3)) sortBy (_.value)
res0: List[A] = List(A:1.0, A:3.0, A:6.0)
http://stackoverflow.com/questions/9751434/simplest-way-to-sort-list-of-objects

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:scala – 排序对象列表的最简单方法