学籍管理系统(Java初级版)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学籍管理系统(Java初级版)相关的知识,希望对你有一定的参考价值。
import java.util.Scanner; /** * 学籍管理系统 * @author Tanker * @version 4.6.0 */ public class XueJiSystem { //Java 入口 public static void main(String[] args) { Scanner sc=new Scanner(System.in); //控制台输入 System.out.println("欢迎来到本学籍管理系统!"); for(;;){ System.out.println("请输入 1.添加学生信息 2.查询 3.修改姓名 4.删除 5.退出"); int num=sc.nextInt(); //接收用户输入 if(num==1){ Student s=new Student();//实例化一个学生对象 //分别给学生的属性赋值 System.out.println("请输入学生学号:"); s.setSid(sc.nextInt()); System.out.println("请输入学生姓名:"); s.setName(sc.next()); System.out.println("请输入学生年龄:"); s.setAge(sc.nextInt()); System.out.println("请输入学生地址:"); s.setAdd(sc.next()); //调用添加方法,并把学生对象传入里面,返回是否添加成功的标示 boolean flag=StudentOperator.addStudent(s); //根据标示,判断是否添加成功 if(flag){ System.out.println("添加成功!"); }else{ System.out.println("添加失败!"); } } else if(num==2){ System.out.println("请输入学生学号:"); int sid=sc.nextInt(); //根据输入学号查询学生信息 Student s=StudentOperator.selectStudent(sid+""); if(s==null){ System.out.println("该学生信息不存在!"); }else{ System.out.println(s.toString());////toString 是默认的一个方法 } } else if(num==3){ System.out.println("请输入要修改姓名的学生学号:"); int sid=sc.nextInt(); //根据输入的学生ID。查询学生信息 Student s=StudentOperator.selectStudent(sid+""); //如果学生信息存在 if(s!=null){ System.out.println("请设置新的姓名:"); String newName=sc.next(); //调用方法,并把学号、学生姓名、修改后的姓名传入里面,返回是否添加成功的标示 boolean flag=StudentOperator.updateStudent(sid,s.getName(),newName); //判断修改是否成功 if(flag){ System.out.println("修改成功!"); }else{ System.out.println("修改失败!"); } //如果学生信息不存在 }else{ System.out.println("该学生信息不存在!请添加"); } } else if(num==4){ System.out.println("请输入要删除的学生学号:"); int sid=sc.nextInt(); //根据输入的学生ID。查询学生信息 Student s=StudentOperator.selectStudent(sid+""); if(s!=null){ //找到学生信息之后将学号传入删除方法并返回是否删除成功的标示 boolean flag=StudentOperator.deleteStudent(sid); //判断是否删除成功 if(flag){ System.out.println("删除成功!"); }else{ System.out.println("删除失败!"); } }else{ System.out.println("该学生信息不存在!"); } } else if(num==5){ System.out.println("系统已退出!"); break; }else{ System.out.println("输入有误!请重输"); } } } } //学生类 public class Student { private int sid;// 学号 private String name;// 姓名 private int age;// 年龄 private String add;// 家庭住址 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 getAdd() { return add; } public void setAdd(String add) { this.add = add; } //显示查询结果 每个类都有toString方法 @Override public String toString() { return "Student [sid=" + sid + ", name=" + name + ", age=" + age + ", add=" + add + "]"; } } //控制类,围绕数组展开增删改查四大方法 public class StudentOperator { static Student stu[]=new Student[10];//用于存放学生对象 // 查询方法 public static Student selectStudent(String sid){ Student s=null;//定义一个学生类的变量s 定义为空 //遍历数组 for(int i=0;i<stu.length;i++){ //当数组元素不为空时 if(stu[i]!=null){ //判断该元素的sid跟外部传入的sid是否相等 if(stu[i].getSid()==Integer.parseInt(sid)){ s=stu[i];//如果相等就把该元素赋值给s } } } return s;//返回学生类s } // 添加学生信息 public static boolean addStudent(Student s){ //定义一个int类型的变量index,赋值为-1,用于标记数组下标 int index=-1; //遍历数组,给要添加的学生找个空位 for(int i=1;i<stu.length;i++){ if(stu[i]==null){ index=i;//有空位就将下标赋值给index,并停止循环 break; } } //通过index下标的值判断添加情况 if(index==-1){ return false; //位置满了添加失败 }else{ stu[index]=s; //将对象学生存入数组 return true; //添加成功 } } // 删除 public static boolean deleteStudent(int sid){ //定义一个布尔类型的变量flag 初始化为false boolean flag=false; //遍历数组 for(int i=0;i<stu.length;i++){ //当数组不为空时 if(stu[i]!=null){ //根据外部传入的sid判断数组中是否存在 if(stu[i].getSid()==sid){ stu[i]=null;//存在的话将数组元素清空(赋值为空) flag=true;//flag变更为true,同时终止循环 break; } } } return flag; //返回布尔值flag } // 修改信息 public static boolean updateStudent(int sid,String field,String newValue){ //定义一个布尔类型的变量flag 初始化为false boolean flag=false; //遍历数组 for(int i=0;i<stu.length;i++){ //当数组不为空时 if(stu[i]!=null){ //根据外部传入的sid判断数组中是否存在 if(stu[i].getSid()==sid){ stu[i].setName(newValue);//存在的话将数组元素的name设置为新的值 flag=true;//flag变更为true,同时终止循环 break; } } } return flag;//返回布尔值flag } }
以上是关于学籍管理系统(Java初级版)的主要内容,如果未能解决你的问题,请参考以下文章