请注意一下题目要求,代码跟要求变化不能太大,感谢各位,设计的好的代码会另加消费哦
。怎么这么多什么什么系统,我们上大学那会都禁止用这种做课程设计
你是要swing还是web的呢?
是课程作业吧?找学长的模板稍加修改就OK了,实际也不难,就是一个数据(库)的增删改查,网上例程好多啊
Java员工信息管理系统
package com.unit6.test;
import java.util.ArrayList;
import java.util.Scanner;
public class EmployeeManager {
/*
* 1. 用输出语句完成主界面的编写
* 2. 用Scanner实现键盘录入数据
* 3. 用switch语句完成操作的选择
* 4. 用循环完成再次回到主界面
*/
public static void main(String[] args) {
// 创建集合对象,用于存储员工数据
ArrayList<Employee> array = new ArrayList<Employee>();
// 用循环完成再次回到主界面
while (true) {
// 1. 用输出语句完成主界面的编写
System.out.println("*******欢迎进入员工管理系统*******");
System.out.println("\t1.输出所有员工信息");
System.out.println("\t2.添加员工信息");
System.out.println("\t3.查询指定工号员工信息");
System.out.println("\t4.修改员工信息");
System.out.println("\t5.删除员工信息");
System.out.println("\t6.退出");
System.out.println("*****************************");
System.out.println("请选择菜单功能:");
// 2. 用Scanner实现键盘录入数据
Scanner in = new Scanner(System.in);
String choice = in.nextLine();//nextLine()返回Enter键之前的所有字符,可得到带空格的字符串;而next()得不到带空格的字符串,视字符串为分隔符
// 3. 用switch语句完成操作的选择
switch (choice) {
case "1":
//查看所有员工
findAllStudent(array);
break;
case "2":
// 添加员工
addEmployee(array);
break;
case "3":
// 根据工号查看员工信息
findEmployeeById(array);
break;
case "4":
// 修改员工
updataStudent(array);
break;
case "5":
// 删除员工
deleteStudent(array);
break;
case "6":
System.out.println("谢谢使用本系统,再见!");
System.exit(0);
default:
// 输入命令有误时,while循环实现返回重新输入
System.out.println("输入错误,请重新输入!");
}
}
}
// 1.定义一个方法,用于查看所有员工信息
public static void findAllStudent(ArrayList<Employee> array) {
if (array.size() == 0) {
System.out.println("抱歉!没有员工记录,请先添加员工信息再查询");
// 为了不让程序继续往下执行
return;
}
System.out.println("工号\t\t姓名\t\t性别\t\t出生日期\t\t\t电话");
// 将集合中数据取出按照对应格式显示员工信息
for (int i = 0; i < array.size(); i++) {
Employee e = array.get(i);
System.out.println(e.getId() + "\t\t" + e.getName() + "\t\t" + e.getSex() +
"\t\t" + e.getBirthday()+ "\t\t" + e.getPhone());
}
}
// 2.定义一个方法,用于添加员工信息
public static void addEmployee(ArrayList<Employee> array) {
// 用键盘录入选择添加员工,显示提示信息,提示要输入何种信息
Scanner in = new Scanner(System.in);
// 为了让id在while循环外面也能被访问到,我们就把它定义在了循环外
String id;
// 为了让程序能够回到这里,我们使用循环使用
while (true) {
System.out.println("请输入工号:");
id = in.nextLine();
boolean flag = isUsed(array, id);
if (flag) {
System.out.println("你输入的工号已经被使用,请重新输入");
} else {
break;
}
}
System.out.println("请输入员工姓名:");
String name = in.nextLine();
System.out.println("请输入员工性别:");
String sex = in.nextLine();
System.out.println("请输入员工出生日期:");
String birthday = in.nextLine();
System.out.println("请输入员工电话:");
String phone = in.nextLine();
// 创建员工对象,把键盘录入的数据赋值给员工对象的成员变量
Employee e = new Employee();
e.setId(id);//set赋值
e.setName(name);
e.setSex(sex);
e.setBirthday(birthday);
e.setPhone(phone);
// 将员工对象添加到集合中保存
array.add(e);
// 给出添加成功提示
System.out.println("添加员工成功");
}
// 定义一个方法,判断工号是否被占用
public static boolean isUsed(ArrayList<Employee> array, String id) {
// 如果与集合中的某一个员工工号相同,返回true 如果都不相同,返回false
boolean flag = false;
for (int i = 0; i < array.size(); i++) {
Employee e = array.get(i);
if (e.getId().equals(id)) {
flag = true;
break;
}
}
return flag;
}
// 3.定义一个方法,用于根据员工工号查看员工信息
public static void findEmployeeById(ArrayList<Employee> array) {
// 用键盘录入选择添加员工,显示提示信息
Scanner in = new Scanner(System.in);
// 输入员工工号
System.out.println("请输入员工工号:");
String id = in.nextLine();
// 在根据员工工号查询前,对工号是否存在进行判断
// 如果不存在,显示不存在提示信息
// 如果存在,输出员工信息
int index = -1;
Employee e = null;
// 遍历集合将对应员工对象从集合中拿出
for (int i = 0; i < array.size(); i++) {
e = array.get(i);
if (e.getId().equals(id)) {
index = i;
break;
}
}
if (index == -1) {
System.out.println("该"+id+"的工号不存在!");
} else {
System.out.println("工号"+"\t\t"+"姓名"+"\t\t"+"性别"+"\t\t"+"出生日期"+"\t\t\t"+"电话");
// 将集合中数据取出按照对应格式显示员工信息
System.out.println(e.getId() + "\t\t" + e.getName() + "\t\t" + e.getSex() +
"\t\t" + e.getBirthday()+ "\t\t" + e.getPhone());
}
}
// 4.定义一个方法,用于修改员工信息
public static void updataStudent(ArrayList<Employee> array) {
// 键盘录入要修改的员工工号,显示提示信息
Scanner in = new Scanner(System.in);
System.out.println("请输入要修改的员工工号:");
String id = in.nextLine();
// 在修改员工操作前,对工号是否存在进行判断
// 如果不存在,显示提示信息
// 如果存在,执行修改操作
int index = -1;
// 遍历集合修改对应的员工信息
for (int i = 0; i < array.size(); i++) {
Employee e = array.get(i);
if (e.getId().equals(id)) {
index = i;
break;
}
}
if (index == -1) {
System.out.println("该工号不存在,请重新输入");
} else {
for (int j = 0; j < array.size(); j++) {
Employee student = array.get(j);
if (student.getId().equals(id)) {
// 键盘录入要修改的员工信息
System.out.println("请输入员工的新姓名:");
String name = in.nextLine();
System.out.println("请输入员工的新性别:");
String sex = in.nextLine();
System.out.println("请输入员工的新出生日期:");
String birthday = in.nextLine();
System.out.println("请输入员工的新电话:");
String phone = in.nextLine();
// 创建员工对象,set进行赋值
Employee e = new Employee();
e.setId(id);
e.setName(name);
e.setSex(sex);
e.setBirthday(birthday);
e.setPhone(phone);
array.set(j, e);
// 给出修改成功提示
System.out.println("修改员工成功");
break;
}
}
}
}
// 5.定义一个方法,用于删除员工信息
public static void deleteStudent(ArrayList<Employee> array) {
// 键盘录入要删除的员工工号,显示提示信息
Scanner in = new Scanner(System.in);
System.out.println("请输入要删除的员工工号:");
String id = in.nextLine();
// 在删除员工操作前,对工号是否存在进行判断
// 如果不存在,显示提示信息
// 如果存在,执行删除操作
int index = -1;
// 遍历集合将对应员工对象从集合中删除
for (int i = 0; i < array.size(); i++) {
Employee e = array.get(i);
if (e.getId().equals(id)) {
index = i;
break;
}
}
if (index == -1) {
System.out.println("该"+id+"的工号不存在!");
} else {
array.remove(index);
System.out.println("删除员工成功!");
}
}
}
java程序实现的员工信息管理系统,主要就是考察java程序的输入输出和循环、条件语句等基本知识的使用:
可以在git下载一个,然后修改完善一下,基于已有的框架进行开发要省事写,从零开发,工作量太大
可以在git下载一个,然后修改完善一下,基于已有的框架进行开发要省事写,从零开发,工作量太大