先写一个实体员工类,包括员工编号,员工名字,员工性别,员工年龄等属性:
package company;
public class employee implements Comparable<employee> {
private int ID;
private String name;
private int age;
private String sex;
public employee(int ID, String name, int age, String sex) {
this.ID = ID;
this.name = name;
this.age = age;
this.sex = sex;
}
public employee() {
}
@Override
public String toString() {
return "employee{" +
"ID=" + ID +
", name='" + name + '\'' +
", age=" + age +
", 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;
}
@Override
public int compareTo(employee o) {
return o.getID()-this.getID();
}
}
再写测试类:
import java.util.Comparator;
import java.util.LinkedList;
import java.util.Scanner;
public class test{
public static void main(String[] args) {//主菜单
Scanner sc=new Scanner(System.in);
test t = new test();
LinkedList<employee> linkedList = new LinkedList<>();
linkedList.add(new employee(1001,"张三",15,"男"));
linkedList.add(new employee(1002,"李四",22,"男"));
linkedList.add(new employee(1003,"王五",18,"女"));
while (true){
System.out.println("1、员工列表\n2、新增员工\n3、修改员工信息\n4、删除员工");
System.out.println("请输入需要选择的菜单对应的编号:");
int a =sc.nextInt();
switch (a){
case 1:
t.showlist(linkedList);
break;
case 2:
t.addlist(linkedList);
break;
case 3:
t.alterlist(linkedList);
break;
case 4:
t.delete(linkedList);
break;
}
}
}
public void showlist(LinkedList<employee> linkedList){
System.out.println("********************");
System.out.println("员工编号 员工姓名 员工性别 员工年龄");
for (employee a :linkedList) {
System.out.println(" "+a.getID()+"\t\t "+a.getName()+"\t\t "+a.getSex()+"\t\t "+a.getAge());
}
}
public void addlist(LinkedList<employee> linkedList){//新增员工
Scanner sc=new Scanner(System.in);
System.out.println("********************");
System.out.println("请输入新增员工的编号:");
int id=sc.nextInt();
for (int i = 0; i < linkedList.size(); i++) {
if (id==linkedList.get(i).getID()){
System.out.println("员工编号已存在,请重新输入:");
id=sc.nextInt();
}
}
System.out.println("请输入新增员工的姓名:");
String name=sc.next();
System.out.println("请输入新增员工的性别:");
String sex=sc.next();
System.out.println("请输入新增员工的年龄:");
int age=sc.nextInt();
linkedList.add(new employee(id, name, age, sex));
}
public void alterlist(LinkedList<employee> linkedList){
Scanner sc=new Scanner(System.in);
System.out.println("请输入要修改的员工编号:");
int id=sc.nextInt();
for (int i = 0; i < linkedList.size(); i++) {
if(id==linkedList.get(i).getID()){
linkedList.get(i).setID(id);
System.out.println("请输入要修改的员工姓名:");
linkedList.get(i).setName(sc.next());
System.out.println("请输入要修改的员工性别:");
linkedList.get(i).setSex(sc.next());
System.out.println("请输入要修改的员工年龄:");
linkedList.get(i).setAge(sc.nextInt());
System.out.println("修改成功!");
return;
}
}
System.out.println("输错了!");
}
public void delete(LinkedList<employee> linkedList){
Scanner sc=new Scanner(System.in);
System.out.println("请输入要删除的员工编号:");
int id=sc.nextInt();
for (int i = 0; i < linkedList.size(); i++) {
if (id==linkedList.get(i).getID()){
linkedList.remove(i);
System.out.println("删除成功!");
return;
}
}
System.out.println("查无此人!");
}
}