小白第4篇对象作业笔记

需求

员工表:

  • id,姓名,入职如期,薪资,年龄,奖金。 {部门类}
  • 部门表:
  • 部门id,部门名称,部门地址。[员工数组]
  • 员工等级: 不出现具体的员工信息和部门信息。
  • 1500–2000 D级。
  • 2000-2500 C级。
  • 2500-3500 B级。
  • 3500-5000 A级。
  • 员工: 基本信息,部门,等级。
  • 部门:开发部,人事部,数据部。
  • 级别:C 。 根据级别查询员工。
  • 系统类: 写方法。根据方法的调用,来展示员工的等级。
  • 测试类:Test

根据需求我们需要创建5个对象

部门类

  • 部门表:
  • 部门id,部门名称,部门地址。[员工数组]
public class Dept {
	public String id;
	public String deptName;
	public String address;

}

2.员工类

员工表:

  • id,姓名,入职如期,薪资,年龄,奖金。 {部门类}

public class Employee {
	public  String id;
	public String name;
	public String date;
	public  double salary;
	public int age;
	public int comm;
	
	
	//部门类
	public Dept dept;
	
	public String toString(){
		return "员工编号:"+id+"\t员工姓名:"+name+"\t入职日期:"+date+
				"\t薪资:"+salary+"\t年龄:"+age+"\t奖金:"+comm+"\t部门:"+dept.deptName;
		
	}

3.等级类

创建一个关于等级的方法

public class Leve {
	//员工等级计算方法/
	public static String getLevel(Employee emp){
		if(emp.salary>=1500 && emp.salary<=2000){
			return "D";
		}else if(emp.salary>2000 && emp.salary<=2500){
			return "C";
		}else if(emp.salary>2500 && emp.salary<=3500){
			return "B";
		}else if(emp.salary>3500 && emp.salary<=5000){
			return "A";
		}else{
			return "无此级别";
		}
	}
	

}

4.系统类

public class EmpSystem {
	
	//展示员工所有信息
	public void show(Employee[] emps){
		System.out.println("所有员工信息");
		for(int i = 0;i<emps.length;i++){
			Employee emp=emps[i];
			System.out.print(emp);
			System.out.print("\t员工等级:"+Leve.getLevel(emp));
			System.out.println();
		}
	}
	//根据部门,显示所有员工
	public void listEmployeesByDept(String dept,Employee[] emps){
		System.out.println(dept+"的员工有:");
		for(int i =0;i<emps.length;i++){
			Employee emp=emps[i];
			if(emp.dept.deptName.equals(dept)){
				System.out.print(emp);
				System.out.print("\t员工级别"+Leve.getLevel(emp));
				System.out.println();
			}
		}
	}
	//根据级别,查询员工
	public void listEmpByLevbel(String level,Employee[] emps){
		System.out.println(level+"级别的员工有:");
		for(int i=0;i<emps.length;i++){
			Employee emp=emps[i];
			if(Leve.getLevel(emp).equals(level)){
				System.out.print(emp);
			}
		}
		
	}

}

5.测试类

public class Test {

	public static void main(String[] args) {
	    Employee emp1= new Employee();
	    emp1.name="赵四";
	    emp1.id="1001";
	    emp1.age=40;
	    emp1.comm= 500;
	    emp1.salary = 2050;
		emp1.date = "1981-10-1";
		
		Employee emp2 = new Employee();
		emp2.name = "刘能";
		emp2.id = "1002";
		emp2.age = 38;
		emp2.comm = 0;
		emp2.salary = 3500;
		emp2.date = "1981-9-22";
		
		Employee emp3= new Employee();
		emp3.name = "谢大坤";
		emp3.id = "1003";
		emp3.age = 35;
		emp3.comm = 0;
		emp3.salary = 1600;
		emp3.date = "1979-2-19";
		
		//实例化部门
		Dept dept = new Dept();
		dept.id = "2001";
		dept.deptName = "人事部";
		dept.address = "纽约";
		
		
		Dept dept1 = new Dept();
		dept1.id = "2002";
		dept1.deptName = "研发部";
		dept1.address = "墨西哥";
		
		Dept dept2 = new Dept();
		dept2.id = "2003";
		dept2.deptName = "调试部";
		dept2.address = "月球";
		
		
		//将部门赋值给员工。
		emp1.dept=dept;
		emp2.dept=dept1;
		emp3.dept=dept2;
		
		Employee[] employees=new Employee[]{emp1,emp2,emp3};
		
		//实例化系统类
		EmpSystem es = new EmpSystem();
		//现实所有员工
		es.show(employees);
		//根据部门,现实所有员工
		es.listEmployeesByDept("人事部", employees);
		//根据等级,显示所有员工
		es.listEmpByLevbel("D", employees);

	}

}

运行结果为:

在这里插入图片描述

小白已疯

小白要疯第n天

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值