JAVA基础练习题
一、题目
现有如下员工信息:
工号 姓名 月薪资
001 杨树苗 4650
002 刘翠花 4280
003 魏巍 6820
004 李宁 5128
005 赵明 3180
请完成如下编码任务:
1)定义一个公共实体类(class Employee)用于描述员工的工号(id)、姓名(name)和薪资(salary)等信息;
2)定义一个公共管理类(class EmployeeManager),使用 ArrayList 泛型集合保存上述列表中的员工信息,并定义公共方法" public void showEmployees() {…}“显示全部员工信息列表;定义公共方法” public float getAvgSalary() {…}“计算并返回全部员工的平均薪资;定义公共方法” public float getStandardDeviation() {…}" 计算并返回全部员工的薪资标准差。
二、解题代码
1.公共管理类(class EmployeeManager)
代码如下:
import java.util.*;
public class EmployeeManager {
public static void main(String[] args) {
// TODO Auto-generated method stub
try{ArrayList<Employee> list = new ArrayList<Employee>();
Employee sid =new Employee("001"," 杨树苗",4650f);
list.add(sid);
sid =new Employee("002"," 刘翠花 ",4280f);
list.add(sid);
sid =new Employee("003","魏巍 ",6820f);
list.add(sid);
sid =new Employee("004","李宁 ",5128f);
list.add(sid);
sid =new Employee("005","赵明 ",3180f);
list.add(sid);
EmployeeManager cid = new EmployeeManager();
cid.showEmployees(list);
System.out.println("平均月薪资:"+cid.getAvgSalary(list));
System.out.print("全部员工的薪资标准差"+cid.getStandardDeviation(list));
}catch(Exception e) {
e.printStackTrace();
}
}
public void showEmployees(ArrayList<Employee> list) {
for (int i = 0; i <list.size(); i++) {
System.out.println("工号: "+list.get(i).getId()+"姓名: "
+list.get(i).getName()+"月薪资: "+list.get(i).getSalary());
}
}
public float getAvgSalary(ArrayList<Employee> list) {
float num=0;
for(int i=0;i<list.size();i++) {
num=num+list.get(i).getSalary();
}
return num/5;
}
public float getStandardDeviation(ArrayList<Employee> list) {
double sum = 0;
for(int i = 0;i<list.size();i++) {
sum = sum + Math.pow((list.get(i).getSalary()-getAvgSalary(list)),2);
}
double resulet = sum/list.size();
return (float) Math.sqrt(resulet);
}
}
2.公共实体类(class Employee)
代码如下:
public class Employee {
public Employee(String id,String name,Float salary)throws Exception{
this.setId(id);
this.setName(name);
this.setSalary(salary);
}
private String id=null;
private String name=null;
private float salary=0;
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 float getSalary() {
return salary;
}
public void setSalary(float salary) {
this.salary = salary;
}
}