JAVA 学生信息管理系统

java 学生信息管理系统

主要使用的增删改查操作

首先,需要先建一个文件(点击左上角File,选择第一个New里的第一个Java Project)
然后再建一个Javabean包,在这个包里新建一个class类

package cn.hbsi.lianxi.bean;

import java.io.Serializable;

public class Student implements Serializable{
	
	private int sid;
	private String name;
	private int age;
	private String address;
	
	//无参构造方法
	public Student() {
		super();
		// TODO Auto-generated constructor stub
	}

	//有参构造方法
	public Student(int sid, String name, int age, String address) {
		super();
		this.sid = sid;
		this.name = name;
		this.age = age;
		this.address = address;
	}

	public int getSid() {
		return sid;
	}

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

	public String getName() {
		return name;
	}

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

	public int getAge() {
		return age;
	}

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

	public String getAddress() {
		return address;
	}

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

然后再建一个包,里面新建一个class类

  1. 写一个选择器
package cn.hbsi.lianxi.manage;

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

import cn.hbsi.lianxi.bean.Student;

public class StudentManage {
	
	public static void main(String[] args) {
		
		ArrayList<Student> list = new ArrayList<Student>();
		
		for(;;) {
			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 sc = new Scanner(System.in);
			int choice = sc.nextInt();
			
			switch (choice) {
			case 1:
				//执行查询所有学生列表的操作
				showAllStudent(list);
				break;
				
			case 2:
				//执行添加学生的操作
				addStudent(list);
				break;
				
			case 3:
				//执行修改学生的操作
				reviseStudent(list);
				break;
				
			case 4:
				//执行删除学生的操作
				delStudent(list);
				break;
				
			case 5:
				//执行退出
				exitStudent(list);
				return;   //这里的 return 是为了退出程序

			default:
				break;
			}
		}
	}
  1. 接下来我们需要进行添加学生操作
//一.添加学生
	private static void addStudent(ArrayList<Student> list) {
		// TODO Auto-generated method stub
		
		//1.	提示用户输入学生信息(学号、姓名、年龄、住址)
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入学号:");
		int sid = sc.nextInt();
		
		System.out.println("请输入姓名:");
		String name = sc.next();
		
		System.out.println("请输入年龄:");
		int age = sc.nextInt();
		
		System.out.println("请输入住址:");
		String address = sc.next();
		
		//2.	将接受到的学生的零散的信息包装到Student Bean中
		Student stu = new Student(sid, name, age, address);
		
		//3.	将学生对象保存到集合中
		list.add(stu);
		
		System.out.println("添加成功!");
	}
  1. 接下来我们通过遍历集合进行查询学生操作
//二.查询所有学生列表
	private static void showAllStudent(ArrayList<Student> list) {
		// TODO Auto-generated method stub
		
		//思路:	遍历集合,获得每一个学生对象,再输出学生对象的信息
		System.out.println("学号\t姓名\t年龄\t住址");
		for(Student stu:list) {
			System.out.println(stu.getSid()+"\t"+stu.getName()+"\t"+stu.getAge()+"\t"+stu.getAddress());
		}
	}
  1. 接下来我们可以进行修改操作了
//三.修改学生
	private static void reviseStudent(ArrayList<Student> list) {
		// TODO Auto-generated method stub
		
		//1.	判断集合中有没有学生信息
		Scanner sc = new Scanner(System.in);
		
		if(list.size()==0) {
			System.out.println("当前没有学生信息");
			return;  //return直接跳出当前语句,不会执行下面的语句
		}
		
		//2.	输入要修改的学生学号
		System.out.println("请输入您想修改的学生学号:");
		int id = sc.nextInt();
		
		//3.	判断输入的id是否在list集合中,如果在,则执行一系列的代码,如果不在,直接跳出
		boolean flag = false;
		
		for(int i=0;i<list.size();i++) {
			
			if(list.get(i).getSid() == id) {
				flag = true;
				
//				list.remove(i);
				
				//4.	提示用户输入新的学生信息(学号、姓名、年龄、住址)
				System.out.println("请输入新的学号:");
				int sidNew = sc.nextInt();
				
				System.out.println("请输入新的姓名:");
				String nameNew = sc.next();
				
				System.out.println("请输入新的年龄:");
				int ageNew = sc.nextInt();
				
				System.out.println("请输入新的住址:");
				String addressNew = sc.next();
				
				//5.	将接受到的学生的零散的信息重新包装到Student Bean中
				Student stu = new Student(sidNew, nameNew, ageNew, addressNew);
				
				//6.	将集合进行修改
				list.set(i, stu);
				
				System.out.println("修改成功!");
				break;
				
				//这是第二种方法
				//return;    //return之后后面的语句不会执行
			}
			
		}
		if(flag == false) {
			System.out.println("没有找到该学生,请重新输入");
		}	

		//因为上面的 return 不会执行这里的语句,所以可以这样写
		//if(flag) {
		//	System.out.println("没有找到该学生,请重新输入");
		//}
	}
  1. 接下来我们进行删除操作
//四.删除学生
	private static void delStudent(ArrayList<Student> list) {
		// TODO Auto-generated method stub
		
		//1.	判断集合中有没有学生信息
		Scanner sc = new Scanner(System.in);
		
		if(list.size()==0) {
			System.out.println("当前没有学生信息");
			return;  //return直接跳出当前语句,不会执行下面的语句
		}
		
		//2.	输入要删除的学生的学号
		System.out.println("请输入您想要删除的学生学号:");
		int id = sc.nextInt();
		
		//3.	判断输入的id是否在list集合中,如果在,则执行一系列的代码,如果不在,直接跳出
		
		boolean flag = false;
		
		for(int i=0;i<list.size();i++) {
			if(list.get(i).getSid() == id) {
				flag = true;
				
				list.remove(i);
				System.out.println("删除成功!");
				return;  //break结束当前语句,下面的代码会继续执行
			}
		}
		if(flag == false) {
			System.out.println("未找到您想要删除的学生信息,请重新输入");
		}
	}
  1. 最后我们发现是不是这个程序停不下来?
    那我们应该怎么退出呢?
    //五.退出
    private static void exitStudent(ArrayList<Student> list) {
    	// TODO Auto-generated method stub
    	System.out.println("退出成功!");
    }
    

你可能感兴趣的:(java,java,学生信息管理系统)