import java.io.{BufferedWriter, FileWriter}
import scala.collection.mutable.ListBuffer
import scala.io.Source
object StuGrade {
case class Student(var name: String,
var chinese: Int,
var math: Int,
var english: Int) {
def getSum: Int = chinese + math + english
}
def main(args: Array[String]): Unit = {
val source = Source.fromFile("./data/student.txt")
val stuArr: Iterator[Array[String]] = source.getLines().map(_.split(" "))
val stuList = ListBuffer[Student]()
// 遍历获取到的对象,将其封装成Student对象后,添加到List中
for (s <- stuArr) {
stuList += Student(s(0), s(1).toInt, s(2).toInt, s(3).toInt)
}
// 对列表按总成绩进行降序排序
val sortList = stuList.sortBy(_.getSum).reverse.toList
val bw = new BufferedWriter(new FileWriter("./data/stu.txt"))
for (s <- sortList) {
bw.write(s"${s.name}\t${s.chinese}\t${s.math}\t${s.english}\t${s.getSum}")
bw.newLine()
}
bw.close()
source.close()
}
}
scala IO案例
最新推荐文章于 2023-08-10 16:45:48 发布