Scala

23 阅读1分钟

屏幕截图 2025-12-08 113750.png


package array
//可变的
import  scala.collection.mutable.ArrayBuffer
//可变和不可变

object array01{

  //1
  case class DreamItem(content: String, var isDone: Boolean, deadline: String, prior: Int)

  def main(args: Array[String]): Unit = {

    //2,3
    val list = ArrayBuffer(
      DreamItem("长高", false, "2026-01-01", 1),
      DreamItem("变漂亮", false, "2029-01-01", 3),
      DreamItem("变帅", false, "2027-01-01", 2),
    )

    //4
    list(1).isDone = true

    //5
    list(2).prior = 1

    //6 sortby 使用指定字段排序
    //reverse 翻转数组(正序,倒序)
    val sortedList =  list.sortBy(_.prior)

    //7把排序之后的数组 截取前两个 放在一个新的列表中
    val  topList = sortedList.take(2)

    //8
    list.foreach(ele => {
      println(ele.content, if (ele.isDone) "已完成" else "未完成")
    })
  }
}