学生管理系统

1. 创建一个Student类

public class Student {
	// 学号
	private String sid;
	// 姓名
	private String name;
	// 年龄
	private String age;
	// 居住地
	private String address;

	public Student() {

	}

	public Student(String sid, String name, String age, String address) {
		this.sid = sid;
		this.name = name;
		this.age = age;
		this.address = address;
	}

	public String getSid() {
		return sid;
	}

	public void setSid(String sid) {
		this.sid = sid;
	}

	public String getName() {
		return name;
	}

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

	public String getAge() {
		return age;
	}

	public void setAge(String age) {
		this.age = age;
	}

	public String getAddress() {
		return address;
	}

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

测试:

import java.util.ArrayList;
import java.util.Scanner;

public class StudentManager {
	public static void main(String[] args) {
		// 创建集合对象,用于存储学生数据
		ArrayList list = new ArrayList();
		while (true) {
			// 主界面
			System.out.println("--------欢迎来到学生管理系统--------");
			System.out.println("1.添加学生");
			System.out.println("2.删除学生");
			System.out.println("3.修改学生");
			System.out.println("4.查看所有学生");
			System.out.println("5.退出");
			System.out.println("请输入你的选择");

			// Scanner 录入
			Scanner sc = new Scanner(System.in);
			String line = sc.next();

			// Switch实现选择操作
			switch (line) {
			case "1":
				// 调用方法
				addStudent(list);
				break;
			case "2":
				deleteStudent(list);
				break;
			case "3":
				updateStudent(list);
				break;
			case "4":
				findAllStudent(list);
				break;
			case "5":
				System.out.println("谢谢使用");
				return;
			}
		}
	}

	// 定义一个方法用于添加学生信息
	public static void addStudent(ArrayList list) {
		// 录入信息
		Scanner sc = new Scanner(System.in);
		String sid;

		while (true) {// 让程序回到这里
			System.out.println("请输入学生学号:");
			sid = sc.next();

			// 判断学号是否重复
			boolean flag = isUser(list, sid);
			if (flag) {
				System.out.println("该学号已经被使用请重新输入:");
			} else {
				break;
			}
		}
		System.out.println("请输入学生姓名:");
		String name = sc.next();
		System.out.println("请输入学生年龄:");
		String age = sc.next();
		System.out.println("请输入学生居住地:");
		String address = sc.next();

		// 创建学生对象,把键盘录入的数据赋值给学生对象的成员变量
		Student s = new Student();
		s.setSid(sid);
		s.setName(name);
		s.setAge(age);
		s.setAddress(address);

		// 将学生对象添加到集合中
		list.add(s);

		// 提示添加成功
		System.out.println("添加学生成功!");


	}

	// 判断学号是否被使用
	public static boolean isUser(ArrayList list, String sid) {
		// 如果集合中的某一个学生学号相同,返回true,如果都不相同,返回false
		boolean flag = false;
		for (int i = 0; i < list.size(); i++) {
			Student s = list.get(i);
			if (s.getSid().equals(sid)) {
				flag = true;
				break;
			}
		}
		return flag;
	}
	// 定义一个方法,用于查看学生信息
	public static void findAllStudent(ArrayList list) {
		// 表头信息
		System.out.println("学号\t姓名\t年龄\t居住地");
		if (list.size() > 0) { // 判断有无信息
			// 遍历,取出集合中的信息
			for (int i = 0; i < list.size(); i++) {
				Student s = list.get(i);
				System.out.println(s.getSid() + "\t" + s.getName() + "\t" + s.getAge() + "岁\t" + s.getAddress());
			}
		} else {
			System.out.println("无学生信息,请先添加信息在查询!");
			return;
		}

	}

	// 定义一个方法,用于删除学生
	public static void deleteStudent(ArrayList list) {
		// 键盘录入信息
		Scanner s = new Scanner(System.in);
		System.out.println("请输入要删除学生的学号:");
		String sid = s.next();
		// 定义一个索引,索引不可能为负数
		int index = -1;
		// 遍历集合,删除信息
		for (int i = 0; i < list.size(); i++) {
			Student s1 = list.get(i);
			if (s1.getSid().equals(sid)) { // 这个学生的学号和键盘录取的学号判断是否相等
				index = i;
				break;
			}
		}
		if (index == -1) {
			System.out.println("该学生信息不存在,请重新输入:");
		} else {
			list.remove(index);
			// 给出删除成功的提示
			System.out.println("删除学生信息成功!");
		}
	}

	// 定义一个方法,用于修改学生
	public static void updateStudent(ArrayList list) {
		// 键盘录入信息
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入你要修改的学生学号:");
		String sid = sc.next();

		// 键盘录入要修改的信息
		System.out.println("请输入新学生姓名:");
		String name = sc.next();
		System.out.println("请输入新学生年龄:");
		String age = sc.next();
		System.out.println("请输入新学生居住地:");
		String address = sc.next();


		// 创建学生对象
		Student s = new Student();
		s.setSid(sid);
		s.setName(name);
		s.setAge(age);
		s.setAddress(address);
		// 定义一个索引,索引不可能为负数
		int ind = -1;
		// 遍历学生信息
		for (int i = 0; i < list.size(); i++) {
			Student st = list.get(i);
			if (st.getSid().equals(sid)) {// 集合中学生学号和键盘录入的学生学号是否相等
				ind = i;
				break;
			}
		}
		if (ind == -1) {
			System.out.println("学号有误,该学生信息不存在,请重新输入:");
			return;
		} else {
			list.set(ind, s);
			// 给出修改成功的提示
			System.out.println("修改学生成功!");
		}
	}
}

1. 添加学生:

学生管理系统_第1张图片

2. 查看学生:

学生管理系统_第2张图片 

3. 删除学生:

学生管理系统_第3张图片

 4. 修改学生

学生管理系统_第4张图片

 

 

你可能感兴趣的:(java)