Scala根据标记的长度排序字符串

时间:2016-03-17 15:36:53

标签: scala

我有以下列表

val input = List("Rahul KM","M Ranjan","LK Advani")

我想根据字符串长度对此列表拆分值进行排序。 例如,我需要输出像

op
List("Rahul KM","Ranjan M","Advani LK")

编辑:例如,考虑“LK Advani”,我需要将其分类为“Advani LK”作为len(Advani)> LEN(LK)

3 个答案:

答案 0 :(得分:3)

简单地:

val res = input.sortBy(_.length)

答案 1 :(得分:3)

我注意到你不只是按长度排序,而且你也在移动姓名首字母和姓氏。怎么样:

input.sortBy(_.length).map { name =>
    name.split(" ").sortWith(_.length > _.length).mkString(" ")
}

答案 2 :(得分:0)

val input = List("Rahul KM","M Ranjan","LK Advani")

var result = input.sortWith( _.length < _.length )

result.foreach( (s:String) => { println(s)} )