java之学生管理系统增删改查

java的普通增删改查

三个类
1、Student类:对属性进行封装
2、 Method: 这个Method类进行功能设计,也就是增删查改
3、Test: 这个类是测试类Test,进行页面设计和测试

package student;

public class Student {
	private  int id;            //定义学号
	private  String name;       //姓名
	private  int age;           //年龄
	private  String sex;        //性别
  /*
   * 对属性进行封装:
   * 1、为什么要用到封装?
   * 我的理解是,属性定义在类中,属性在外面,公开别人就能看的见你的所有信息。
   * 有了封装之后,就能把重要的东西给隐藏起来,把能看见的共享出去。
   * 封装面向属性更安全,把私有的属性都保护起来,不让别人修改内部的消息,不让别人去访问内部的消息。
   * 在java中用的是get()【得到的意思】,set()【设置替换的意思】方法,属性私有化用关键字private
   * 就比如一个人在大马路上睡觉,他就会有风吹雨打各种情况,而如果他在房子里的床上睡觉,就可以睡的安稳。
   * 2、快速生成get(),set()方法
   * 步骤一:在声明的类中,单击鼠标右键,选择source
   * 步骤二:选择Generate Getters and Setters
   * 步骤三:根据需要配置 
   */
	public Student(){
	}
	public  Student(String name,int age ,int  id,String sex){
	    this.name=name;
	    this.age=age;
	    this.id=id;
	    this.sex=sex;
	}
    public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	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 getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
}
package student;
import java.util.ArrayList;
import java.util.Scanner;
/*
 * 这个Method类进行功能设计,也就是增删查改
 */
public class Method {
	public void add(ArrayList<Student> array) { // 增加
		Scanner scanner = new Scanner(System.in);
		int id;// 为了让id能够访问到,把它放在循环的外面
	while (true) {
			System.out.println("开始添加,请输入你要添加的学生学号:");
			id = scanner.nextInt();
			boolean flag = false;
			for (int i = 0; i < array.size(); i++) {
				Student s = array.get(i);
				if (s.getId() == id) {
					flag = true;
					break;
				}
			}
			if (flag) {
				System.out.println("已存在该学号,请输入另一个学号。");
			} else {
				break;
			}
		}
		System.out.println("请输入你要添加的学生姓名:");
		String name = scanner.next();
		System.out.println("请输入你要添加的学生年龄:");
		int age = scanner.nextInt();
		System.out.println("请输入你要添加的学生性别:");
		String sex = scanner.next();
		Student s = new Student();
		s.setId(id);
		s.setName(name);
		s.setAge(age);
		s.setSex(sex);
		array.add(s);
		System.out.println("添加成功");
	}

	public void delete(ArrayList<Student> array) { // 删除
		  Scanner sc = new Scanner(System.in);
	        System.out.println("请输入要删除的学生学号:");
	        int id = sc.nextInt();
	        int index =-1;
	        for (int i = 0; i < array.size(); i++) {
	            Student s = array.get(i);
	            if (s.getId()==id){
	              index=i;
	                break;
	            }
	        }
	        if (index==-1){
	            System.out.println("该信息不存在,请重新输入!");
	        }else{
	            array.remove(index);
	            System.out.println("删除成功!");
	        }
	}

	public void lookup(ArrayList<Student> array) { // 查找
	
		if (array.size() == 0) {
			System.out.println("无学生信息可以查询,你可以先添加学生信息");
			return;
		}
		// \t就是tab键的位置
		System.out.println("学号\t姓名\t年龄\t所属地");
		for (int i = 0; i < array.size(); i++) {
			Student st = array.get(i);
			System.out.println(st.getId() + "\t" + st.getName() + "\t"
					+ st.getAge() + "岁\t" + st.getSex());
		}
		System.out.println("学生的信息已显示完毕");
	}

	public void revise(ArrayList<Student> array) { // 修改
		Scanner sc = new Scanner(System.in);
        System.out.println("请输入要修改的学生学号:");
        int id = sc.nextInt();
        int index =-1;
        for (int i = 0; i < array.size(); i++) {
            Student s = array.get(i);
            if (s.getId()==id){
                index=i;
             break;
            }
        }
        if (index==-1) {
            System.out.println("不好意思,没有你要修改的学号,请再次输入");
        }
        else{
            System.out.println("请输入新的学生姓名:");
            String name = sc.next();
            System.out.println("请输入新的学生年龄:");
            int age = sc.nextInt();
            System.out.println("请输入新的学生性别:");
            String sex = sc.next();
            Student s = new Student();
            s.setId(id);
            s.setName(name);
            s.setAge(age);
            s.setSex(sex);
            array.set(index, s);
            System.out.println("修改成功!");
        }
	}
}

package student;
import java.util.ArrayList;
import java.util.Scanner;
/*
 * 这个类是测试类Test
 * 进行页面设计和测试
 */
public class Test {
	public static void main(String[] args) {
		ArrayList<Student> array = new ArrayList<Student>();
		// ArrayList ,指定存放对象的类型,需要把对象的类型标注在尖括号内,jdk1.8以后,可以省略不写
		while (true) {
			System.out.println("---------欢迎进入学生管理系统---------");
			System.out.println("          1、增加学生的信息");
			System.out.println("          2、删除学生的信息");
			System.out.println("          3、查找学生的信息");
			System.out.println("          4、修改学生的信息");
			System.out.println("          0、退出");
			System.out.println("请输入你的指令:");
			Scanner scanner = new Scanner(System.in);
			int a = scanner.nextInt();
			Method method = new Method();
			switch (a) {
			case 0: {
				System.out.println("你已经退出系统了");
				System.exit(a);
			}
			case 1: {
				method.add(array);
				break;
			}
			case 2: {
				method.delete(array);
				break;
			}
			case 3: {
				method.lookup(array);
				break;
			}
			case 4: {
				method.revise(array);
				break;
			}
			default:
				System.out.println("输入的指令不符,请你仔细查看功能再进行输入");
				break;
			}
		}
	}
}
发布了45 篇原创文章 · 获赞 38 · 访问量 2148

猜你喜欢

转载自blog.csdn.net/qq_44830627/article/details/105074794