Scala 实现学生系统 - 示例代码及解析
下面是一个简单的 Scala 实现的学生系统示例:\n\nscala\nimport scala.collection.mutable.ArrayBuffer\n\n// 学生类\nclass Student(val id: Int, val name: String, val age: Int) {\n override def toString: String = s"Student(id=$id, name=$name, age=$age)"\n}\n\n// 学生系统类\nclass StudentSystem {\n private val students = ArrayBuffer[Student]() // 学生列表\n\n // 添加学生\n def addStudent(student: Student): Unit = {\n students += student\n }\n\n // 根据学号查找学生\n def findStudentById(id: Int): Option[Student] = {\n students.find(_.id == id)\n }\n\n // 根据姓名查找学生\n def findStudentsByName(name: String): Seq[Student] = {\n students.filter(_.name == name)\n }\n\n // 根据年龄查找学生\n def findStudentsByAge(age: Int): Seq[Student] = {\n students.filter(_.age == age)\n }\n\n // 显示所有学生\n def displayAllStudents(): Unit = {\n students.foreach(println)\n }\n}\n\n// 主函数\nobject Main extends App {\n val studentSystem = new StudentSystem()\n\n // 添加学生\n studentSystem.addStudent(new Student(1, "Alice", 18))\n studentSystem.addStudent(new Student(2, "Bob", 20))\n studentSystem.addStudent(new Student(3, "Alice", 22))\n studentSystem.addStudent(new Student(4, "Charlie", 18))\n\n // 查找学生\n val student1 = studentSystem.findStudentById(2)\n println(student1)\n\n val students2 = studentSystem.findStudentsByName("Alice")\n students2.foreach(println)\n\n val students3 = studentSystem.findStudentsByAge(18)\n students3.foreach(println)\n\n // 显示所有学生\n studentSystem.displayAllStudents()\n}\n\n\n这个示例中,学生类有学号、姓名和年龄三个属性,学生系统类有一个学生列表,包括添加学生、根据学号、姓名和年龄查找学生以及显示所有学生的方法。在主函数中,创建一个学生系统对象,添加了几个学生,然后进行了一些查找和显示操作。
原文地址: https://www.cveoy.top/t/topic/pyvF 著作权归作者所有。请勿转载和采集!