写一个展示系统,要求以命令行的形式或图形的方式或界面的方式展示所有Java实验做的题目和运行结果。 改展示系统主要有下面的功能: 1、增加java实验的题目 2、修改题目 3、删除题目 4、为每个实验添加完成的程序 5、为每个实验添加完成的程序的运行结果 6、删除已提交的程序,删除已提交的结果 7、展示系统退出后提交的程序和结果保存在文件或数据库中。
时间: 2024-03-23 11:40:26 浏览: 84
这是一个相对复杂的系统,需要根据不同的需求和技术栈来实现。以下是一个简单的展示系统的示例代码,仅供参考。
```
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class JavaLabSystem {
private ArrayList<String> labTitles;
private Map<String, String> labPrograms;
private Map<String, String> labResults;
public JavaLabSystem() {
this.labTitles = new ArrayList<>();
this.labPrograms = new HashMap<>();
this.labResults = new HashMap<>();
}
public void addLab(String title, String program, String result) {
labTitles.add(title);
labPrograms.put(title, program);
labResults.put(title, result);
}
public void updateLab(String title, String program, String result) {
labPrograms.replace(title, program);
labResults.replace(title, result);
}
public void deleteLab(String title) {
labTitles.remove(title);
labPrograms.remove(title);
labResults.remove(title);
}
public void displayLabs() {
for (int i = 0; i < labTitles.size(); i++) {
System.out.println("[" + (i + 1) + "] " + labTitles.get(i));
}
}
public void displayLabDetails(String title) {
System.out.println("Title: " + title);
System.out.println("Program: " + labPrograms.get(title));
System.out.println("Result: " + labResults.get(title));
}
public void runLabProgram(String title) {
System.out.println("Running program for " + title + "...");
// TODO: 执行程序的代码
}
public void deleteLabProgram(String title) {
labPrograms.replace(title, "");
labResults.replace(title, "");
System.out.println("Program and result for " + title + " have been deleted.");
}
public void saveToFile() {
// TODO: 将数据保存到文件的代码
}
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
JavaLabSystem labSystem = new JavaLabSystem();
boolean isRunning = true;
while (isRunning) {
System.out.println("Java Lab System");
System.out.println("1. Add lab");
System.out.println("2. Update lab");
System.out.println("3. Delete lab");
System.out.println("4. Display labs");
System.out.println("5. Display lab details");
System.out.println("6. Run lab program");
System.out.println("7. Delete lab program");
System.out.println("8. Save to file");
System.out.println("9. Exit");
System.out.print("Enter your choice: ");
int choice = input.nextInt();
input.nextLine(); // 消耗掉回车符
switch (choice) {
case 1:
System.out.print("Enter lab title: ");
String title = input.nextLine();
System.out.print("Enter lab program: ");
String program = input.nextLine();
System.out.print("Enter lab result: ");
String result = input.nextLine();
labSystem.addLab(title, program, result);
System.out.println("Lab added successfully.");
break;
case 2:
System.out.print("Enter lab title to update: ");
String labTitle = input.nextLine();
if (labSystem.labTitles.contains(labTitle)) {
System.out.print("Enter new lab program: ");
String labProgram = input.nextLine();
System.out.print("Enter new lab result: ");
String labResult = input.nextLine();
labSystem.updateLab(labTitle, labProgram, labResult);
System.out.println("Lab updated successfully.");
} else {
System.out.println("Lab not found.");
}
break;
case 3:
System.out.print("Enter lab title to delete: ");
String labTitleToDelete = input.nextLine();
if (labSystem.labTitles.contains(labTitleToDelete)) {
labSystem.deleteLab(labTitleToDelete);
System.out.println("Lab deleted successfully.");
} else {
System.out.println("Lab not found.");
}
break;
case 4:
labSystem.displayLabs();
break;
case 5:
System.out.print("Enter lab title to display details: ");
String labTitleToDisplay = input.nextLine();
if (labSystem.labTitles.contains(labTitleToDisplay)) {
labSystem.displayLabDetails(labTitleToDisplay);
} else {
System.out.println("Lab not found.");
}
break;
case 6:
System.out.print("Enter lab title to run program: ");
String labTitleToRun = input.nextLine();
if (labSystem.labTitles.contains(labTitleToRun)) {
labSystem.runLabProgram(labTitleToRun);
} else {
System.out.println("Lab not found.");
}
break;
case 7:
System.out.print("Enter lab title to delete program: ");
String labTitleToDeleteProgram = input.nextLine();
if (labSystem.labTitles.contains(labTitleToDeleteProgram)) {
labSystem.deleteLabProgram(labTitleToDeleteProgram);
} else {
System.out.println("Lab not found.");
}
break;
case 8:
labSystem.saveToFile();
System.out.println("Data saved to file.");
break;
case 9:
isRunning = false;
System.out.println("Exiting Java Lab System...");
break;
default:
System.out.println("Invalid choice. Please try again.");
break;
}
System.out.println();
}
}
}
```
这个示例代码使用了面向对象的编程思想,将Java实验系统封装成了一个Java类,提供了增加、修改、删除、展示和运行实验等功能。这个示例代码仅供参考,实际开发中需要根据具体的需求进行修改和完善。