阶段设计——学生管理系统(数组)

package venus;

public class Student {

	private String id;
	private String name;
	private String mobile;
	private String address;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getMobile() {
		return mobile;
	}

	public void setMobile(String mobile) {
		this.mobile = mobile;
	}

	public String getAddress() {
		return address;
	}

	public void setAddress(String address) {
		this.address = address;
	}

	@Override
	public String toString() {
		return "Student [id=" + id + ", name=" + name + ", mobile=" + mobile + ", address=" + address + "]";
	}

}

package venus;

import java.util.Scanner;

public class Main {

	static int index = 0;
	static Student[] students = new Student[45];

	public static void main(String[] args) {
		/*
		 * Scanner scanner = new Scanner(System.in);
		 * //Ctrl+Shift+o——>快速引包,java.lang下的类不需要引包。
		 * System.out.println("请输入姓名"); String name = scanner.next();//接收外界输出的数据String
		 * System.out.println(name);
		 */

		System.out.println("***********************************");
		System.out.println("*      欢迎使用学生管理系统                   *");
		System.out.println("***********************************");
		for (;;) {// 死循环
			menu();
		}
	}

	private static void menu() {
		System.out.println("1、添加学生信息");
		System.out.println("2、删除学生信息");
		System.out.println("3、修改学生信息");
		System.out.println("4、查询学生信息");
		System.out.println("请输入操作项,点击Enter键");
		Scanner scanner = new Scanner(System.in);
		int option = scanner.nextInt();
		switch (option) {
		case 1: {// 添加学生信息
			if (index > students.length - 1) {
				System.out.println("已经没有座位了");
				return;
			}
			Student student = new Student();
			System.out.println("请输入学号,点击Enter键");
			String id = scanner.next();
			student.setId(id);
			System.out.println("请输入姓名,点击Enter键");
			String name = scanner.next();
			student.setName(name);
			System.out.println("请输入手机号,点击Enter键");
			String mobile = scanner.next();
			student.setMobile(mobile);
			System.out.println("请输入家庭地址,点击Enter键");
			String address = scanner.next();
			student.setAddress(address);
			if (index != 0) {
				for (Student stu : students) {
					if (stu == null) {
						break;
					}
					if (stu.getId().equals(student.getId())) {
						System.out.println("学号不允许重复");
						return;
					}
				}
			}
			students[index] = student;// 添加学生
			index = index + 1;// 位置下移,为存储下一个学生做铺垫
			System.out.println(index);
			System.out.println("添加成功");
			return;
		}
		case 2: {// 删除学生信息

			boolean hasDate = false;
			System.out.println("请输入学号,点击Enter键");
			String id = scanner.next();
			int i = 0;
			for (; i < students.length; i++) {
				if (students[i] == null) {// 没有找到元素
					break;
				}
				if (id.equals(students[i].getId())) {
					hasDate = true;
					break;
				}
			}
			if (!hasDate) {
				System.out.println("没有找到学号为" + id + "的学生");
				return;
			}
			for (; i < students.length; i++) {
				if (i == students.length - 1) {// 满员是将最后一个元素null
					students[i] = null;
					break;
				}
				students[i] = students[i + 1];
				if (students[i + 1] == null) {
					break;
				}
			}
			System.out.println("删除成功");
			index = index - 1;
			return;
		}
		case 3: {// 修改学生信息
			boolean hasDate = false;
			System.out.println("请输入学号,点击Enter键");
			String id = scanner.next();
			for (Student student : students) {
				if (student == null) {
					break;
				}
				if (student.getId().equals(id)) {
					System.out.println("请输入姓名,点击Enter键");
					String name = scanner.next();
					student.setName(name);
					System.out.println("请输入手机号,点击Enter键");
					String mobile = scanner.next();
					student.setMobile(mobile);
					System.out.println("请输入家庭地址,点击Enter键");
					String address = scanner.next();
					student.setAddress(address);
					System.out.println("修改学生信息成功");
					hasDate = true;
					return;
				}
			}
			if (!hasDate) {
				System.out.println("没有找到学号为" + id + "的学生信息");
			}
			return;
		}
		case 4: {// 查询学生信息
			boolean hasDate = false;
			System.out.println("请输入学号,点击Enter键");
			String id = scanner.next();
			for (Student student : students) {
				if (student == null) {
					break;
				}
				if (student.getId().equals(id)) {
					System.out.println(student);
					hasDate = true;
				}
			}
			if (!hasDate) {
				System.out.println("没有找到学号为" + id + "的学生信息");
			}
			return;
		}
		default:
			System.out.println("系统没有找到" + option + "操作项!");
			return;
		}
	}

}

你可能感兴趣的:(java)