import\s+scala.collection.mutable.ListBuffer\nimport\s+java.io._\n\n//\s+学生类\nclass\s+Student(name:\s+String, qq:\s+String, wechat:\s+String)\s+{\n\s+def\s+getName():\s+String\s+=\s+name\n\s+def\s+getQQ():\s+String\s+=\s+qq\n\s+def\s+getWechat():\s+String\s+=\s+wechat\n\s+override\s+def\s+toString():\s+String\s+=\s+s"Name:\s+$name, QQ:\s+$qq, Wechat:\s+$wechat"\n}\n\n//\s+学生管理系统类\nclass\s+StudentManagementSystem\s+{\n\s+private\s+var\s+studentList:\s+ListBuffer[Student]\s+=\s+ListBufferStudent\n\n\s+//\s+添加学生信息\n\s+def\s+addStudent(student:\s+Student):\s+Unit\s+=\s+{\n\s+\s+studentList\s+=\s+student\n\s+\s+saveToFile()\n\s+}\n\n\s+//\s+删除学生信息\n\s+def\s+deleteStudent(name:\s+String):\s+Unit\s+=\s+{\n\s+\s+studentList\s+=\s+studentList.filterNot(_.getName()\s+==\s+name)\n\s+\s+saveToFile()\n\s+}\n\n\s+//\s+修改学生信息\n\s+def\s+updateStudent(name:\s+String, qq:\s+String, wechat:\s+String):\s+Unit\s+=\s+{\n\s+\s+val\s+student\s+=\s+studentList.find(_.getName()\s+==\s+name)\n\s+\s+student\s+match\s+{\n\s+\s+\s+case\s+Some(s)\s+=>\n\s+\s+\s+\s+s.asInstanceOf[Student].getQQ()\s+==\s+qq\n\s+\s+\s+\s+s.asInstanceOf[Student].getWechat()\s+==\s+wechat\n\s+\s+\s+case\s+None\s+=>\s+println("Student not found")\n\s+\s+}\n\s+\s+saveToFile()\n\s+}\n\n\s+//\s+查找学生信息\n\s+def\s+searchStudent(name:\s+String):\s+Unit\s+=\s+{\n\s+\s+val\s+student\s+=\s+studentList.find(_.getName()\s+==\s+name)\n\s+\s+student\s+match\s+{\n\s+\s+\s+case\s+Some(s)\s+=>\s+println(s)\n\s+\s+\s+case\s+None\s+=>\s+println("Student not found")\n\s+\s+}\n\s+}\n\n\s+//\s+从文件中读取学生信息到内存中\n\s+def\s+readFromFile():\s+Unit\s+=\s+{\n\s+\s+try\s+{\n\s+\s+\s+val\s+file\s+=\s+new\s+File("students.txt")\n\s+\s+\s+if\s+(file.exists())\s+{\n\s+\s+\s+\s+val\s+fileReader\s+=\s+new\s+FileReader(file)\n\s+\s+\s+\s+val\s+bufferedReader\s+=\s+new\s+BufferedReader(fileReader)\n\s+\s+\s+\s+var\s+line\s+=\s""\n\s+\s+\s+\s+while\s+({\s+line\s+=\s+bufferedReader.readLine();\s+line\s+!=\s+null\s+})\s+{\n\s+\s+\s+\s+\s+val\s+studentInfo\s+=\s+line.split(",")\n\s+\s+\s+\s+\s+val\s+student\s+=\s+new\s+Student(studentInfo(0), studentInfo(1), studentInfo(2))\n\s+\s+\s+\s+\s+studentList\s+=\s+student\n\s+\s+\s+\s+}\n\s+\s+\s+\s+bufferedReader.close()\n\s+\s+\s+\s+fileReader.close()\n\s+\s+\s+}\n\s+\s+}\s+catch\s+{\n\s+\s+\s+case\s+e:\s+IOException\s+=>\s+e.printStackTrace()\n\s+\s+}\n\s+}\n\n\s+//\s+把学生信息持久化保存到文件中\n\s+def\s+saveToFile():\s+Unit\s+=\s+{\n\s+\s+try\s+{\n\s+\s+\s+val\s+file\s+=\s+new\s+File("students.txt")\n\s+\s+\s+val\s+fileWriter\s+=\s+new\s+FileWriter(file)\n\s+\s+\s+val\s+bufferedWriter\s+=\s+new\s+BufferedWriter(fileWriter)\n\s+\s+\s+studentList.foreach(student\s+=>\s+{\n\s+\s+\s+\s+val\s+line\s+=\s+s"${student.getName()},${student.getQQ()},${student.getWechat()}"\n\s+\s+\s+\s+bufferedWriter.write(line)\n\s+\s+\s+\s+bufferedWriter.newLine()\n\s+\s+\s+})\n\s+\s+\s+bufferedWriter.close()\n\s+\s+\s+fileWriter.close()\n\s+\s+}\s+catch\s+{\n\s+\s+\s+case\s+e:\s+IOException\s+=>\s+e.printStackTrace()\n\s+\s+}\n\s+}\n}\n\n//\s+测试代码\nobject\s+Test\s+{\n\s+def\s+main(args:\s+Array[String]):\s+Unit\s+=\s+{\n\s+\s+val\s+system\s+=\s+new\s+StudentManagementSystem()\n\s+\s+system.readFromFile()\n\n\s+\s+val\s+student1\s+=\s+new\s+Student("Alice", "123456", "alice123")\n\s+\s+val\s+student2\s+=\s+new\s+Student("Bob", "654321", "bob456")\n\s+\s+val\s+student3\s+=\s+new\s+Student("Charlie", "987654", "charlie123")\n\n\s+\s+system.addStudent(student1)\n\s+\s+system.addStudent(student2)\n\s+\s+system.addStudent(student3)\n\n\s+\s+system.searchStudent("Alice")\n\s+\s+system.searchStudent("Bob")\n\s+\s+system.searchStudent("Charlie")\n\n\s+\s+system.updateStudent("Alice", "111111", "alice789")\n\s+\s+system.searchStudent("Alice")\n\n\s+\s+system.deleteStudent("Bob")\n\s+\s+system.searchStudent("Bob")\n\s+}\n\

Scala 学生管理系统:增删改查功能实现

原文地址: https://www.cveoy.top/t/topic/pzQ5 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录