员工管理系统(数组版)

package com.zhp.yggl;
 
public class YuanGong {
    private String id;
    private String name;
    private String zw;
    private int qjts;
    private int jbgz;
 
    public YuanGong() {
       super();
       // TODO Auto-generated constructor stub
    }
 
    public YuanGong(String id, String name, String zw, int qjts, int jbgz) {
       super();
       this. id = id;
       this. name = name;
       this. zw = zw;
       this. qjts = qjts;
       this. jbgz = jbgz;
    }
 
    public String getId() {
       return id;
    }
 
    public void setId(String id) {
       this. id = id;
    }
 
    public String getName() {
       return name;
    }
 
    public void setName(String name) {
       this. name = name;
    }
 
    public String getZw() {
       return zw;
    }
 
    public void setZw(String zw) {
       this. zw = zw;
    }
 
    public int getQjts() {
       return qjts;
    }
 
    public void setQjts( int qjts) {
       this. qjts = qjts;
    }
 
    public int getJbgz() {
       return jbgz;
    }
 
    public void setJbgz( int jbgz) {
       this. jbgz = jbgz;
    }
 
    public double gz() {
       return jbgz + jbgz * 0.6 + 200- jbgz/30* qjts;
    }
 
    @Override
    public String toString() {
       return "编号:" + id + "  姓名" + name + "  职务:" + zw + "  请假天数:" + qjts + "  工资" + gz();
    }
 
}
 
 
package com.zhp.yggl;
 
public class PTYuanGong extends YuanGong{
 
    public PTYuanGong() {
       super();
    }
 
    public PTYuanGong(String id, String name, String zw, int qjts, int jbgz) {
       super( id, name, zw, qjts, jbgz);
    }
    @Override
    public double gz() {
       return super.gz();
    }
    @Override
    public String toString() {
       return super.toString();
    }
 
}
 
 
package com.zhp.yggl;
 
public class JingLi extends YuanGong {
 
    public JingLi() {
       super();
    }
 
    public JingLi(String id, String name, String zw, int qjts, int jbgz) {
       super( id, name, zw, qjts, jbgz);
    }
 
    @Override
    public double gz() {
       return getJbgz() + getJbgz() * 0.7 + 500 - getJbgz() / 30 * getQjts();
    }
 
    @Override
    public String toString() {
       return "编号:" + getId() + "  姓名" + getName() + "  职务:" + getZw() + "  请假天数:" + getQjts() + "  工资" + gz();
    }
 
}
 
 
package com.zhp.yggl;
 
public class DongShi extends YuanGong {
 
    public DongShi() {
       super();
    }
 
    public DongShi(String id, String name, String zw, int qjts, int jbgz) {
       super( id, name, zw, qjts, jbgz);
    }
 
    @Override
    public double gz() {
       return getJbgz() + getJbgz() * 0.38 + 5000 - getJbgz() / 30 * getQjts();
    }
 
    @Override
    public String toString() {
       return "编号:" + getId() + "  姓名" + getName() + "  职务:" + getZw() + "  请假天数:" + getQjts() + "  工资" + gz();
    }
 
}
 
 
package com.zhp.yggl;
 
import java.util.Scanner;
public class GongNeng {
    Scanner sc = new Scanner(System. in);
    YuanGong[] arr = new YuanGong[100];
    int current = -1; // 用于保存当前数组中员工对象的下标
    public void yeWu() {
       int x = 0;
       while ( true) {
           System. out.println( "请选择业务");
           System. out.println( "--------------------员工管理系统--------------------");
           System. out.println( "1.添加    2.删除    3.修改    4.查询所有    5.根据姓名查询    0.退出");
           System. out.println( "--------------------员工管理系统--------------------");
           x = sc.nextInt();
           if ( x == 1) {
              add();
           } else if ( x == 2) {
              del();
           } else if ( x == 3) {
              update();
           } else if ( x == 4) {
              selectAll();
           } else if ( x == 5) {
              selectName();
           } else if ( x == 0) {
              exit();
              break;
           } else {
              System. out.println( "请选择正确的功能");
           }
       }
    }
 
    // 添加
    public void add() {
       System. out.println( "--------------------添加员工--------------------");
       System. out.print( "请输入员工编号");
       String q = sc.nextLine();
       String id = sc.nextLine();
       System. out.print( "请输入员工姓名");
       String name = sc.nextLine();
       System. out.print( "请输入职务(普通员工,经理,董事长)");
       String zw = sc.nextLine();
       System. out.print( "请输入请假天数");
       int qjts = sc.nextInt();
       System. out.print( "请输入基本工资");
       int jbgz = sc.nextInt();
       if( zw.equals( "普通员工")){
           PTYuanGong yg = new PTYuanGong( id, name, zw, qjts, jbgz);
           current++;
           arr[ current] = yg;         
       } else if( zw.equals( "经理")){
           current++;
           JingLi jl = new JingLi( id, name, zw, qjts, jbgz);
           arr[ current] = jl;  
       } else if( zw.equals( "董事")){
           current++;
           DongShi ds = new DongShi( id, name, zw, qjts, jbgz);
           arr[ current] = ds;  
       } else{
           System. out.println( "请输入正确的职务");
       }
    }
 
    // 删除
    public void del() {
       System. out.println( "--------------------删除员工--------------------");
       System. out.println( "请输入员工姓名:");
       String q = sc.nextLine();
       String name1 = sc.nextLine();
       boolean flag = false;
       for ( int i = 0; i <= current; i++) {
           if ( name1.equals( arr[ i].getName())) {
              System. out.println( arr[ i].toString());
              System. out.println( "确定么?1(是)0(否)");
              int a = sc.nextInt();
              if ( a == 1) {
                  System. out.println( "删除成功");
                  flag = true;
              }
              // 此处if放在判断名字的if内,名字不相等是不进入此处if
              if ( flag) {
                  // 此处for循环j<=current也可以,因为最后current--掉了
                  for ( int j = i; j <= current - 1; j++) {
                     arr[ j] = arr[ j + 1];
                  }
                  current--;
              }
           }
       }
       if ( flag == false) {
           System. out.println( "此员工不存在");
       }
 
    }
 
    // 修改
    public void update() {
       System. out.println( "--------------------修改员工信息--------------------");
       System. out.println( "请输入员工姓名:");
       String q = sc.nextLine();
       String name1 = sc.nextLine();
       boolean flag = false;
       for ( int i = 0; i <= current; i++) {
           if ( name1.equals( arr[ i].getName())) {
              flag = true;
           }
           if ( flag) {
              System. out.println( "请重新输入员工信息");
              System. out.print( "请输入编号");
              String w = sc.nextLine();
              String id = sc.nextLine();
              System. out.print( "请输入姓名");
              String name = sc.nextLine();
              System. out.print( "请输入职务");
              String zw = sc.nextLine();
              System. out.print( "请输入请假天数");
              int qjts = sc.nextInt();
              System. out.print( "请输入基本工资");
              int jbgz = sc.nextInt();
              arr[ i] = new YuanGong( id, name, zw, qjts, jbgz);
           }
       }
       if ( flag == false) {
           System. out.println( "此员工不存在");
       }
    }
 
    // 查看所有的
    public void selectAll() {
       System. out.println( "--------------------查看所有员工信息--------------------");
       for ( int i = 0; i <= current; i++) {
           System. out.println( arr[ i].toString());
       }
 
    }
 
    // 根据姓名查看
    public void selectName() {
       System. out.println( "--------------------查找员工--------------------");
       System. out.println( "请输入员工姓名:");
       String q = sc.nextLine();
       String name1 = sc.nextLine();
       boolean flag = false;
       for ( int i = 0; i <= current; i++) {
           if ( name1.equals( arr[ i].getName())) {
              flag = true;
           }
           if ( flag) {
              System. out.println( arr[ i].toString());
              break;
           }
       }
       if ( flag == false) {
           System. out.println( "不存在此人");
       }
    }
 
    // 退出
    public void exit() {
       System. out.println( "系统退出");
    }
 
}
 
 
package com.zhp.yggl;
 
public class Test {
 
    public static void main(String[] args) {
       GongNeng gn = new GongNeng();
       gn.yeWu();
 
    }
 
}
 

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值