java如何制作一个简单的学生管理系统,实现基本的增删改查功能。

实现原理:将学生对象存入集合中(把集合作为临时数据库),然后通过对集合中学生对象进行操作,实现该功能。

一、创建学生类(class Student)

二、创建管理系统的接口(interface MangerStore)

管理系统接口中分别定义五个抽象方法:

1.添加学生方法 boolean addStudent(Student student);

2.查找学生方法 Student findStudent(String studentNo);

3.删除学生方法 boolean deleteStudent(String studentNo);

4.修改学生信息方法 Student updateStudent(String studentNo,String name,String sex,int age);

5.显示所有学生信息 void showAll();

三、

1.创建类(class Impl1)来实现管理系统的接口(interface MangerStore)的抽象方法,在本类中定义一个ArrayList集合来临时存放学生对象信息。

2.创建类(class Impl2)来实现管理系统的接口(interface MangerStore)的抽象方法,在本类中定义一个ArraySet集合来临时存放学生对象信息。

3.创建类(class Impl1)来实现管理系统的接口(interface MangerStore)的抽象方法,在本类中定义一个HashMap集合来临时存放学生对象信息。

(以上三种实现方法选一种即可,推荐使用map集合)

四、创建客户端类(class Client)进行测试。

好了话不多说,直接上代码,本文只实现了set集合这种方法。

学生类:
package com.xintouyun.sm.student;
public class Student {
	private String name;
	private String num;
	private int age;
	private String sex;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getNum() {
		return num;
	}
	public void setNum(String num) {
		this.num = num;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
}
管理类接口:
package com.xintouyun.sm.mangerstore;
import com.xintouyun.sm.student.Student;
/**
 * 
 * @author Jianghaoqiang
 *
 */
public interface MangerStore {
	/**
	 *添加学生方法
	 * @param student 对象为学生对象
	 * @return 添加成功返回true,添加失败返回false
	 */
	boolean addStudent(Student student);
	/**
	 * 查找学生方法
	 * @param studentNo 根据学生学号查找
	 * @return 查找成功返回这个学生对象,查找失败返回null
	 */
	Student findStudent(String studentNo);
	/**
	 * 删除学生方法
	 * @param studentNo 根据学生学号进行查找,然后删除
	 * @return 删除成功返回true,删除失败返回false
	 */
	boolean deleteStudent(String studentNo);
	/**
	 * 修改学生信息方法
	 * @param studentNo 根据学生学号查找,然后修改信息
	 * @return 修改成功返回学生对象,修改失败返回null
	 */
	Student updateStudent(String studentNo,String name,String sex,int age);
	/**
	 * 显示所有学生信息,包括姓名,学号,性别,年龄。
	 */
	void showAll();
	
}
管理实现类:
package com.xintouyun.sm.mangerstore.impl;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import com.xintouyun.sm.mangerstore.MangerStore;
import com.xintouyun.sm.student.Student;
public class Impl1 implements MangerStore{
	//创建一个arraylist集合来存放学生对象
	private List<Student> StuList=new ArrayList<Student>();
	
	@Override
	public boolean addStudent(Student student) {
		// TODO Auto-generated method stub
		return StuList.add(student);
	}

	@Override
	public Student findStudent(String studentNo) {
		// TODO Auto-generated method stub
		Iterator<Student> it=StuList.iterator();
		while(it.hasNext()) {
			Student student=it.next();
			if(studentNo.equals(student.getNum())) {
				return student;
			}
		}
		return null;
	}

	@Override
	public boolean deleteStudent(String studentNo) {
		// TODO Auto-generated method stub
		Student existStudent=findStudent(studentNo);
		if(existStudent!=null) {
			return StuList.remove(existStudent);
		}
		return false;
	}

	@Override
	public Student updateStudent(String studentNo,String name,String sex,int age) {
		// TODO Auto-generated method stub
		Student existStudent=findStudent(studentNo);
		if(existStudent!=null) {			
			return existStudent;			
			}
		return null;
	}

	@Override
	public void showAll() {
		// TODO Auto-generated method stub
		System.out.println("学号\t姓名\t性别\t年龄");
		Iterator<Student> it=StuList.iterator();
		while(it.hasNext()) {
			Student st=it.next();
			System.out.println(st.getNum()+"\t"+st.getName()+"\t"+st.getSex()+"\t"+st.getAge());
		}
		return;
	}
	
}
客户端(测试类):
package com.xintouyun.sm;
import java.util.Scanner;
import com.xintouyun.sm.mangerstore.impl.Impl1;
import com.xintouyun.sm.student.Student;

public class Client {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Impl1 data=new Impl1();
		String nextor="y";
		System.out.println("-----------------欢迎使用学生管理系统-------------------");
		do { 
			Scanner sc=new Scanner(System.in);
			System.out.println("1.添加2.查找3.删除4.修改5.显示"); 
		int i=0;
		i=sc.nextInt();
		switch(i) {
		case 1:
			//Student s=new Student();
			System.out.println("请输入学生学号");
			String id=sc.next();
			System.out.println("请输入学生年龄");
			int age=sc.nextInt();
			System.out.println("请输入学生姓名");
			String name=sc.next();
			System.out.println("请输入学生性别");
			String sex=sc.next();
			Student student=new Student();
			student.setAge(age);
			student.setName(name);
			student.setNum(id);
			student.setSex(sex);
			//data.addStudent(s);
			boolean result=data.addStudent(student);
			if(result) {
				System.out.println("添加成功");
				data.showAll();
			}else {
				System.out.println("添加失败");
			}
			break;
		case 2:
			System.out.println("请输入要查找的学生学号");
			id=sc.next();
			Student existStudent=data.findStudent(id);
			if(existStudent!=null) {
			System.out.println("查找到学生信息如下");
			System.out.println(existStudent.getAge()+existStudent.getName()+existStudent.getNum()+existStudent.getSex());
			}else {
			System.out.println("未查找到相关信息");
			}
		break;
			
		case 3:
			System.out.println("请输入要删除的学生学号");
			id=sc.next();
			result=data.deleteStudent(id);
			if(result) {
				System.out.println("删除成功");
				data.showAll();
			}else {
				System.out.println("删除失败");
			}
			break;
			
		case 4:
			System.out.println("请输入要更新的学生学号");
			id=sc.next();
			existStudent=data.findStudent(id);
			if(existStudent!=null) {
				System.out.println("请输入要更新的学生姓名");
				existStudent.setName(sc.next());
				System.out.println("请输入要更新的学生年龄");
				existStudent.setAge(sc.nextInt());
				System.out.println("请输入要更新的学生性别");
				existStudent.setSex(sc.next());
				System.out.println("更新成功");	
			}else {
				System.out.println("更新失败");
			}
			break;
		case 5:
			data.showAll();
			break;
		
		}System.out.println("是否继续y/n");
			nextor=sc.next();
	}while(nextor.equalsIgnoreCase("y"));
}
}

说明:本文只实现了简单的管理系统功能,没有考虑系统的健壮性,没有进行异常处理,接口已经写好,另外两种实现方法我还没来得及写,有兴趣可以试着写一下。
   

猜你喜欢

转载自blog.csdn.net/qq_40180411/article/details/81174783