每个学生在班级的整体排名
package test5
import scala.collection.mutable.ListBuffer
object test5_2 {
def main(args: Array[String]): Unit = {
case class Student(name: String,
zongfen: Int,
var mingci:Int)
val list = ListBuffer[Student]()
//存在并列的名词
list += Student("孙涛",90,0)
list += Student("林峰",105,0)
list += Student("周梅",102,0)
list += Student("吴刚",101,0)
list += Student("郑洁",90,0)
list += Student("陈晨",90,0)
//对list进行排序,按总分排序
val orderList = list.sortWith((a,b)=>a.zongfen>b.zongfen)
orderList.foreach(println)
//对有序的列表,从前开始向后比较--比较
//(1)如果当前的分数不等于预设分数,则名词 +1
//(2)如果当前的分数等于预设分数,则名词不变
var curScore = -1
var mingci = 0;
for (elem <- orderList){
if (elem.zongfen != curScore){
mingci += 1
elem.mingci = mingci
curScore = elem.zongfen
}else{
elem.mingci = mingci
}
}
// orderedList.foreach(println)
// println("-"*40)
list.foreach(println)
}
}