例题

20 阅读1分钟

例题:梦想清单管理。

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

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

3. 添加3个梦想

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

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

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

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

8. 循环输出梦想列表

package array

object array0 {
  case class DreamItem(content:String,isDone:Boolean,deadline:String,prior:Int)
  def main(args: Array[String]): Unit = {
    val dream1 = DreamItem("旅行";,false,"2026-9-16",1)
    val dream2 = DreamItem("健身",false,"2026-10-21",2)
    val dream3 = DreamItem("学化妆",false,"2026-11-26",3) val dreamList = scala.collection.mutable.ArrayBuffer(dream1,dream2,dream3)
    //4
    dreamList(1) = dreamList(1).copy(isDone = true)
    //5
    dreamList(2) = dreamList(2).copy(prior=0)
    //6
    val oderList = dreamList.sortBy(_.prior)
    //7
    val newList = oderList.slice(0,2)
    //8
    dreamList.foreach(ele =>{
      println("---------------";)
      println(s"内容:${ele.content}";)
      println(s"状态:${if(ele.isDone)"完成"else"未完成"}")
      println(s"截止日期:${ele.deadline}")
      println(s"优先级:${ele.prior}")
      println("---------------")
      println()
    })
  }
}

image.png