类 Project
:
- 定义了项目的三个主要属性:名称(
name
)、描述(description
)和状态(status
)。 - 构造函数用于初始化这些属性。
- 提供了获取属性值和设置状态的方法。
类 ProjectManagementSystem
:
- 利用
ArrayList
来存储项目对象。 addProject
方法用于添加新项目,并显示添加成功的消息。displayProjects
方法用于展示项目信息,若列表为空则给出提示,否则遍历并打印每个项目的详细信息。updateProjectStatus
方法根据输入的项目名称更新其状态,若未找到指定项目则提示。
main
方法:
- 创建了项目管理系统对象和扫描器对象。
- 通过一个无限循环展示操作选项,包括添加项目、显示项目信息、更新项目状态和退出。
- 根据用户的输入选择执行相应的操作。
import java.util.ArrayList;
import java.util.Scanner;
class Project {
private String name;
private String description;
private String status;
public Project(String name, String description, String status) {
this.name = name;
this.description = description;
this.status = status;
}
public String getName() {
return name;
}
public String getDescription() {
return description;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
}
class ProjectManagementSystem {
private ArrayList<Project> projects = new ArrayList<>();
public void addProject(Project project) {
projects.add(project);
System.out.println("项目添加成功。");
}
public void displayProjects() {
if (projects.isEmpty()) {
System.out.println("项目管理系统中没有项目信息。");
} else {
System.out.println("项目管理系统中的项目信息:");
for (Project project : projects) {
System.out.println("项目名称: " + project.getName() + ", 描述: " + project.getDescription() + ", 状态: " + project.getStatus());
}
}
}
public void updateProjectStatus(String projectName, String newStatus) {
for (Project project : projects) {
if (project.getName().equalsIgnoreCase(projectName)) {
project.setStatus(newStatus);
System.out.println("项目状态更新成功。");
return;
}
}
System.out.println("找不到指定项目。");
}
public static void main(String[] args) {
ProjectManagementSystem projectManagementSystem = new ProjectManagementSystem();
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("\n1. 添加项目\n2. 显示所有项目信息\n3. 更新项目状态\n4. 退出");
System.out.print("请输入您的选择: ");
int choice = scanner.nextInt();
switch (choice) {
case 1:
System.out.print("请输入项目名称: ");
String name = scanner.next();
System.out.print("请输入项目描述: ");
String description = scanner.next();
System.out.print("请输入项目状态: ");
String status = scanner.next();
Project newProject = new Project(name, description, status);
projectManagementSystem.addProject(newProject);
break;
case 2:
projectManagementSystem.displayProjects();
break;
case 3:
System.out.print("请输入要更新状态的项目名称: ");
String projectName = scanner.next();
System.out.print("请输入新的项目状态: ");
String newStatus = scanner.next();
projectManagementSystem.updateProjectStatus(projectName, newStatus);
break;
case 4:
System.out.println("程序退出。再见!");
System.exit(0);
default:
System.out.println("无效选择。请重试。");
}
}
}
}