How to find max in a list of tuples?

前端 未结 3 1667
不思量自难忘°
不思量自难忘° 2020-12-06 10:00

I have the following list of tuples:

val arr = List((\'a\',10),(\'b\',2),(\'c\',3))

How to find the tuple with the max key or max value?

3条回答
  •  醉梦人生
    2020-12-06 10:31

    Easy-peasy:

    scala> val list = List(('a',10),('b',2),('c',3))
    list: List[(Char, Int)] = List((a,10), (b,2), (c,3))
    
    scala> val maxByKey = list.maxBy(_._1)
    maxByKey: (Char, Int) = (c,3)
    
    scala> val maxByVal = list.maxBy(_._2)
    maxByVal: (Char, Int) = (a,10)
    

    So basically you can provide to List[T] any function T => B (where B can be any ordered type, such as Int or String by example) that will be used to find the maximum.

提交回复
热议问题