任务背景:梦想清单管理
1.使用case class定义DreamItem类。它的属性有:内容,是否完成,截止日期,优先级
2.定义可变Array来保存DreamItem
3.天假3个梦想
4.将第二个梦想设置为已完成
5.调高第三个梦想的优先级
6.根据优先级从高到低排序
7.把优先级排名前五的梦想保存到一个新的列表中
8.循环输出梦想列表
package array
// 可变的
import scala.collection.mutable.ArrayBuffer
object array02 {
// 1. 使用case class定义DreamItem类。它的属性有:内容,是否完成,截止日期,优先级
case class DreamItem(content: String, var isDons: Boolean, deadline: String, var priority: Int)
def main(args: Array[String]): Unit = {
// 2,3. 定义可变Array来保存DreamItem,并添加3个梦想
val list = ArrayBuffer(
DreamItem("赚到100W", false, "2028-01-01", 2),
DreamItem("1W个粉丝", false, "2026-12-01", 2),
DreamItem("跑15km", false, "2026-06-06", 2),
)
// 4. 将第二个梦想设置为已完成
list(1).isDons = true
// 5. 调高第三个梦想的优先级(将优先级从2提升到1)
list(2).priority = 1
// 6. 根据优先级从高到低排序
list.sortInPlaceBy(_.priority)
// 7. 把优先级排名前五的梦想保存到一个新的列表中
val topFiveDreams = list.take(5)
// 8. 循环输出梦想列表
println("梦想清单:")
topFiveDreams.foreach(ele => {
println(s"${ele.content}, 截止日期: ${ele.deadline}, 优先级: ${ele.priority}, 状态: ${if (ele.isDons) "已完成" else "未完成"}")
})
}
}