Trong Scala 2.8, tôi có nhu cầu gọi List.min và cung cấp chức năng so sánh của riêng tôi để lấy giá trị dựa trên phần tử thứ hai của Tuple2. Tôi đã phải viết loại code này:Trong Scala, cách sử dụng Đặt hàng [T] với List.min hoặc List.max và giữ mã có thể đọc được
val list = ("a", 5) :: ("b", 3) :: ("c", 2) :: Nil
list.min(new Ordering[Tuple2[String,Int]] {
def compare(x:Tuple2[String,Int],y:Tuple2[String,Int]): Int = x._2 compare y._2
})
Có cách nào để làm điều này dễ đọc hơn hoặc để tạo ra một Thứ tự ra khỏi một chức năng ẩn danh như bạn có thể làm với list.sortBy(_._2)
?
'danh sách min Ordering.by ((_: (_, Int)) ._ 2)' –
Tôi thấy mặt cười ... – soc
danh sách min Đặt hàng [Int] .on [WeightedType] (_. Weight) – cessationoftime