Array实训内容

24 阅读1分钟

1. 使用case class 定义DreamItem类。它的属性有:内容,是否完成,截止日期,优先级。

2. 定义可变Array来保存DreamItem。

3. 添加3个梦想

4. 将第2个梦想设置为已完成

5. 调高第3个梦想的优先级

6. 根据优先级进行从高到低排序

7. 把优先级排名前5的梦想保存到一个新的列表中

8. 循环输出梦想列表

object array05 {
  case class DreamItem(content:String,isDone:Boolean,deadline:String,prior:Int)
  def main(args: Array[String]): Unit = {
    val dream1 = DreamItem("早睡早起",false,"2026-6-6",1)
    val dream2 = DreamItem("自己做一顿饭",false,"2026-12-11",2)
    val dream3 = DreamItem("减肥运动",false,"2026-3-6",3)

    val dreamList =scala.collection.mutable.ArrayBuffer(dream1,dream2,dream3)

    dreamList(1)=dreamList(1).copy(isDone = true)

    dreamList(2)=dreamList(2).copy(prior = 0)

    val oderList = dreamList.sortBy(_.prior)
    dreamList.foreach(ele=>{
      println("________________________________________________")
      println(s"内容:${ele.content}")
      println(s"状态:${if(ele.isDone)"完成" else "未完成"}")
      println(s"截止日期:${ele.deadline}")
      println(s"优先级:${ele.prior}")
      println("_______________________________________________")
      println()
    })
  }
}