10.24

交作业了
import java.util.*;

// 模拟课程类
class Course {
private String name;
private String teacher;
private String location;

public Course(String name, String teacher, String location) {
this.name = name;
this.teacher = teacher;
this.location = location;
}

// getters
public String getName() { return name; }
public String getTeacher() { return teacher; }
public String getLocation() { return location; }

@Override
public boolean equals(Object obj) {
if (this == obj) return true;
if (obj == null || getClass() != obj.getClass()) return false;
Course course = (Course) obj;
return Objects.equals(name, course.name) &&
Objects.equals(teacher, course.teacher) &&
Objects.equals(location, course.location);
}

@Override
public int hashCode() {
return Objects.hash(name, teacher, location);
}
}

public class CourseManager {
// 模拟数据库存储
private static Set courseDatabase = new HashSet<>();
private static final Set VALID_TEACHERS = Set.of(
"王建民", "刘立嘉", "刘丹", "杨子光", "张云霞", "武勇亮", "高飞", "孙静"
);
private static final Set VALID_LOCATION_PREFIXES = Set.of(
"一教", "二教", "三教", "基教"
);

public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);

while (true) {
System.out.println("请输入新课程信息(格式:课程名称,任课教师,上课地点),输入 exit 退出:");
String input = scanner.nextLine().trim();

if ("exit".equalsIgnoreCase(input)) {
break;
}

String[] parts = input.split(",");
if (parts.length != 3) {
System.out.println("输入格式错误,请按“课程名称,任课教师,上课地点”格式输入。");
continue;
}

String name = parts[0].trim();
String teacher = parts[1].trim();
String location = parts[2].trim();

// 检查课程是否重复
Course newCourse = new Course(name, teacher, location);
if (courseDatabase.contains(newCourse)) {
System.out.println("课程名称、数量、重新录入");
continue;
}

// 检查教师是否合法
if (!VALID_TEACHERS.contains(teacher)) {
System.out.println("任课教师不符合要求,请重新录入。");
continue;
}

// 检查地点前缀
boolean validLocation = false;
for (String prefix : VALID_LOCATION_PREFIXES) {
if (location.startsWith(prefix)) {
validLocation = true;
break;
}
}
if (!validLocation) {
System.out.println("上课地点不符合要求,请重新录入。");
continue;
}

// 添加到“数据库”
courseDatabase.add(newCourse);
System.out.println("课程添加成功!");
}

scanner.close();
System.out.println("程序结束。当前课程总数:" + courseDatabase.size());
}
}

posted @ 2025-10-24 20:12  春酲01  阅读(10)  评论(0)    收藏  举报