例题:梦想清单管理。
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()
})
}
}