九、Spark基础环境实战(下)

打开虚拟机,连接Xshell后

1. 编辑添加内容

往里面添加:

import scala.collection.mutable.ListBuffer

import scala.io.StdIn

object TodoManagerNe extends App {

private val todos = ListBuffer[String]()

println("=== 待办事项管理器 ===")

println("命令列表:") println(" add [事项] - 添加待办事项")

println(" list - 查看所有待办事项")

println(" delete [序号] - 删除指定待办事项")

println(" exit - 退出程序")

println()

var running = true

while (running) {

print("> ")

val input = StdIn.readLine().trim.split("\\s+", 2)

if (input.isEmpty) {

// 空输入,忽略

} else {

input(0) match {

case "add" if input.length > 1 =>

todos += input(1)

println(s"已添加: ${input(1)}")

case "list" =>

if (todos.isEmpty) {

println("没有待办事项")

} else {

println("待办事项:")

todos.zipWithIndex.foreach { case (todo, index) =>

println(s" {index + 1}. todo")

}

}

case "delete" if input.length > 1 =>

try {

val index = input(1).toInt - 1

if (index >= 0 && index < todos.length) {

val removed = todos.remove(index)

println(s"已删除: $removed")

} else {

println("无效的序号")

}

} catch {

case _: NumberFormatException =>

println("请输入有效的数字序号")

}

case "exit" =>

running = false

println("再见!")

case _ =>

println("未知命令,请重试")

}

}

}

}

2. Scala 源代码文件(.scala)编译为 Java 字节码文件(.class)

scala TodoManagerNe.scala

  1. 运行已编译好的 Scala 程序
相关推荐
黎阳之光21 小时前
黎阳之光:以视频孪生领跑全球,赋能数字孪生水利智能监测新征程
大数据·人工智能·算法·安全·数字孪生
蓝黑202021 小时前
Vue的 value=“1“ 和 :value=“1“ 有什么区别
前端·javascript·vue
小李子呢021121 小时前
前端八股6---v-model双向绑定
前端·javascript·算法
有想法的py工程师21 小时前
PostgreSQL 分区表排序优化:Append Sort 优化为 Merge Append
大数据·数据库·postgresql
史迪仔01121 天前
[QML] QML IMage图像处理
开发语言·前端·javascript·c++·qt
AI_Claude_code1 天前
ZLibrary访问困境方案四:利用Cloudflare Workers等边缘计算实现访问
javascript·人工智能·爬虫·python·网络爬虫·边缘计算·爬山算法
safestar20121 天前
ES批量写入性能调优:BulkProcessor 参数详解与实战案例
java·大数据·运维·jenkins
weixin_156241575761 天前
基于YOLOv8深度学习花卉识别系统摄像头实时图片文件夹多图片等另有其他的识别系统可二开
大数据·人工智能·python·深度学习·yolo
科技与数码1 天前
互联网保险迎来新篇章,元保方锐分享行业发展前沿洞察
大数据·人工智能