九、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 程序
相关推荐
Blossom.11812 分钟前
大模型推理优化实战:连续批处理与PagedAttention性能提升300%
大数据·人工智能·python·神经网络·算法·机器学习·php
沐泽__21 分钟前
iframe内嵌页面双向通信
前端·javascript·chrome
小北方城市网22 分钟前
第4 课:Vue 3 路由与状态管理实战 —— 从单页面到多页面应用
前端·javascript·vue.js
F36_9_37 分钟前
数字化项目管理系统分享:7款助力企业实现项目智能化协同的工具精选
大数据
interception38 分钟前
爬虫逆向,瑞数6,补环境,国家专利
javascript·爬虫·python·网络爬虫
qq_12498707531 小时前
基于协同过滤算法的在线教育资源推荐平台的设计与实现(源码+论文+部署+安装)
java·大数据·人工智能·spring boot·spring·毕业设计
掘金安东尼1 小时前
顶层元素问题:popover vs. dialog
前端·javascript·面试
掘金安东尼1 小时前
React 的新时代已经到来:你需要知道的一切
前端·javascript·面试
1024肥宅2 小时前
现代 JavaScript 特性:TypeScript 深度解析与实践
前端·javascript·typescript
程途拾光1582 小时前
发展中国家的AI弯道超车:医疗AI的低成本本土化之路
大数据·人工智能