java实现学员管理系统

 

package com.ha;

import java.util.*;

public class Main {
 public static void main(String[] args) {

  Student[] stu = new Student[50];
  Scanner input = new Scanner(System.in);
  int count = 0;// 记录数组中的有效容量
  String userin = "";// 记录一次输入结束后是否继续输入
  int mainmenuchoice = 0;// 主菜单选择

  while (true) {
   System.out.println("1.添加学生信息");
   System.out.println("2.修改学生信息");
   System.out.println("3.删除学生信息");
   System.out.println("4.查询学生信息");
   System.out.println("5.显示学生信息");
   System.out.println("6.退出学生系统");
   System.out.println("请选择操作...");
   mainmenuchoice = input.nextInt();

   switch (mainmenuchoice) {
   case 1:
    while (true) {
     System.out.println("开始添加学生信息");
     stu[count] = new Student();// 因为是对象数组所以需要单独开盘内存空间
     System.out.println("请输入学生编号");
     int tempsid = input.nextInt();
     stu[count].setSid(tempsid);
     System.out.println("请输入学生姓名");
     String tempsname = input.next();
     stu[count].setSname(tempsname);
     System.out.println("请输入学生年龄");
     int tempage = input.nextInt();
     stu[count].setAge(tempage);
     count++;
     System.out.println("是否继续输入(y/n)");
     userin = input.next();
     if (userin.equals("n"))
      break;
    }
    break;
   case 2:
    System.out.println("开始修改学生信息");
    
    int updateid = 0;
    System.out.println("请输入要删除的学生编号");
    updateid = input.nextInt();
    boolean hasupdate = false;// 标记变量,用来标记是否找到需要修改的学生
    int updateindex = 0;// 用来记录需要修改的学生信息在数组中的位置
    for (int i = 0; i < count; i++) {
     if (stu[i].getSid() == updateid) {
      hasupdate = true;
      updateindex = i;
      break;
     }
    }
    if (hasupdate) {
     System.out.println("学号\t姓名\t年龄");
     System.out.println(stu[updateindex]);
     System.out.println("您确定要修改该学生的信息吗?(y/n)");
     userin = input.next();
     if (userin.equals("y")) {// 确认修改
      System.out.println("请输入学生编号");
      int tempsid = input.nextInt();
      stu[updateindex].setSid(tempsid);
      System.out.println("请输入学生姓名");
      String tempsname = input.next();
      stu[updateindex].setSname(tempsname);
      System.out.println("请输入学生年龄");
      int tempage = input.nextInt();
      stu[updateindex].setAge(tempage);
      System.out.println("修改成功");
     }
    } else {
     // 3.没找到给用户相应的提示
     System.out.println("对不起没有找到您输入的学生信息,请核对后再次输入");
    }
    break;
   case 3:
    System.out.println("开始删除学生信息");
    // 1.找到需要删除的学生
    // 让用户输入要删除的学生的编号,以编号为查找条件进行查找
    int delid = 0;
    System.out.println("请输入要删除的学生编号");
    delid = input.nextInt();
    boolean hasdel = false;// 标记变量,用来标记是否找到需要删除的学生
    int delindex = 0;// 用来记录需要删除的学生信息在数组中的位置
    for (int i = 0; i < count; i++) {
     if (stu[i].getSid() == delid) {
      hasdel = true;
      delindex = i;
      break;
     }
    }
    // 2.找到了删除掉
    if (hasdel) {
     // 显示已经找到的学生信息
     System.out.println("学号\t姓名\t年龄");
     System.out.println(stu[delindex]);
     System.out.println("您确定要删除该学生信息吗?(y/n)");

     // 要求用户确认删除操作
     userin = input.next();
     if (userin.equals("y")) {// 确认删除
      for (int i = delindex; i < count - 1; i++) {
       stu[i] = stu[i + 1];
      }
      count--;// 删除了一个数组,有效容量减一
     }

    } else {
     // 3.没找到给用户相应的提示
     System.out.println("对不起没有找到您需要删除的学生信息,请核对后再次输入");
    }

    break;

   case 4:
    System.out.println("查询学生信息");
    int queryid = 0;
    System.out.println("请输入要删除的学生编号");
    queryid = input.nextInt();
    boolean hasquery = false;// 标记变量,用来标记是否找到需要查找的学生
    int queryindex = 0;// 用来记录需要查找的学生信息在数组中的位置
    for (int i = 0; i < count; i++) {
     if (stu[i].getSid() == queryid) {
      hasquery = true;
      queryindex = i;
      break;
     }
    }
    if (hasquery) {
     System.out.println("学号\t姓名\t年龄");
     System.out.println(stu[queryindex]);
    } else {
     // 3.没找到给用户相应的提示
     System.out.println("对不起没有找到您输入的学生信息,请核对后再次输入");
    }

    break;

   case 5:
    System.out.println("显示所有学生信息");
    System.out.println("学号\t姓名\t年龄");
    for (int i = 0; i < count; i++) {
     System.out.println(stu[i]);
    }
    break;
   case 6:
    System.exit(0);// 终止应用程序
    break;

   default:
    System.out.println("对不起,您选择的操作不存在,请看清楚谢谢!!!");
   }
  }

 

 

 

//属性 方法

package com.ha;

public class Student {
 private int sid;
 private String sname;
 private int age;
 
 
 public int getSid() {
  return sid;
 }
 public void setSid(int sid) {
  this.sid = sid;
 }
 public String getSname() {
  return sname;
 }
 public void setSname(String sname) {
  this.sname = sname;
 }
 public int getAge() {
  return age;
 }
 public void setAge(int age) {
  this.age = age;
 }
 
 public String toString(){
  return sid + "\t" + sname + "\t" + age;
 }
}

 

该项目是用JAVA-Swing编写。需要建立一个mysql表。因为软件问题无法导出,请读者自行创建。表的列数据在下载文件的截图中,因为程序有导出数据库到Excel文件和界面美化(共27个皮肤),所以需要导入两个jar包,在下载文件里,复制这两个文件在exlipse中点击课程设计然后粘贴,再右击这两个包点击build path->第一个,这就是这两个包的导入方法。皮肤无法动态更换,在主界面中代码可以找到。下面是整个课程设计的需求。 天津市瑞聪驾驶员学校为简化人工劳动,提高管理效率,帮助管理者便捷科学管理培训信息,决定开发一套驾校管理系统实现以下需求。 1)软件的使用者是驾校负责人,负责人可以通过软件录入驾校学员信息(包括姓名、性别、电话、身份证号码、照片、报名时间、学费金额、考试进度)。 2)负责人可以通过软件录入驾校教练信息(包括姓名、电话、照片等)、驾校车辆信息(车牌号、车型、车龄)。 3)负责人可以在软件中浏览学员、教练和车辆的信息概况(JTable或JList),可以查看选中记录的详细信息;可以编辑更新记录信息。 4)负责人可以通过软件为一个或一批学员新建学车记录,即为学员安排教练、车辆、练车日期和练车时长等信息。 5)软件可以根据练车记录,统计指定时间段内学员的练车总时间、教练教学总时间、驾校报名总收入等不同信息。 6)负责人可以将学员练车记录导出到txt文件或excel文件 7)除以上功能外,还可根据实际需要添加其他功能。
验证随便写。该项目是用JAVA-Swing编写,界面美观,暂时没有找到BUG。需要建立一个mysql数据库。因为软件问题无法导出,请读者自行创建。表的列数据在下载文件的截图中,因为程序有导出数据库到Excel文件和界面美化(共27个皮肤),所以需要导入两个jar包,在下载文件里,复制这两个文件在exlipse中点击课程设计然后粘贴,再右击这两个包点击build path->第一个,这就是这两个包的导入方法。皮肤无法动态更换,在主界面中代码可以找到。下面是整个课程设计的需求。 天津市瑞聪驾驶员学校为简化人工劳动,提高管理效率,帮助管理者便捷科学管理培训信息,决定开发一套驾校管理系统实现以下需求。 1)软件的使用者是驾校负责人,负责人可以通过软件录入驾校学员信息(包括姓名、性别、电话、身份证号码、照片、报名时间、学费金额、考试进度)。 2)负责人可以通过软件录入驾校教练信息(包括姓名、电话、照片等)、驾校车辆信息(车牌号、车型、车龄)。 3)负责人可以在软件中浏览学员、教练和车辆的信息概况(JTable或JList),可以查看选中记录的详细信息;可以编辑更新记录信息。 4)负责人可以通过软件为一个或一批学员新建学车记录,即为学员安排教练、车辆、练车日期和练车时长等信息。 5)软件可以根据练车记录,统计指定时间段内学员的练车总时间、教练教学总时间、驾校报名总收入等不同信息。 6)负责人可以将学员练车记录导出到txt文件或excel文件 7)除以上功能外,还可根据实际需要添加其他功能,以上是全部需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值