1、问题描述
希望对字符串数组("5","2","1","11","15")排序得到("1"," 2", "5", "11","15"),但是调用sorted函数后得到的是字典排序
2、解决办法
使用如下代码即可妥善解决
tmp1.sortBy(_.toInt)
3、方法缺陷
上述的代码的适用范围有限,仅针对纯数字的字符串有效,对含有字母的排序或报错
解决办法
tmp2.sortBy(_.substring(1).toInt)
针对如("bB-5","AB-2","CCB-1","B-11","DDDDB-15")此种类型是的使用split 将数字提取出来进行排序
tmp3.sortBy(_.split("-")(1).toInt)
4、总结
针对字符串数字排序,核心思想是将数字提取出来,对数字进行排序