package com.test; import java.util.*; public class Demo7_3 { public static void main(String[] args) { // TODO Auto-generated method stub Emp emp = new Emp("sa001", "xiaoming", 12.3f); Stack stack = new Stack(); stack.add(emp); for (int i = 0; i < stack.size(); i++) { Emp temp = (Emp)stack.get(i); System.out.println(temp.getName()); } } } //雇員管理類 class EmpManage { private ArrayList al = null; // 構造函數最主要的作用就是初始化成員變量 public EmpManage() { al = new ArrayList(); } // 加入員工 public void addEmp(Emp emp) { al.add(emp); } // 根據員工號顯示該員工的相關信息 public void showInfo(String empNo) { // 遍歷整個ArrayList for (int i = 0; i < al.size(); i++) { // 取出Emp對象 Emp emp = (Emp) al.get(i); // 比較編號 if (emp.getEmpNo().equals(empNo)) { System.out.println("找到該員工,他的信息是"); System.out.println("編號=" + empNo); System.out.println("名字=" + emp.getName()); System.out.println("工資=" + emp.getSal()); } } } // 修改工資 public void updateSal(String empNo, float newSal) { for (int i = 0; i < al.size(); i++) { Emp emp = (Emp) al.get(i); if (emp.getEmpNo().equals(empNo)) { // 修改薪水 emp.setSal(newSal); } } } // 刪除員工 public void delEmp(String empNo) { for (int i = 0; i < al.size(); i++) { Emp emp = (Emp) al.get(i); if (emp.getEmpNo().equals(empNo)) { // 兩種刪除方式都可以 al.remove(i); // al.remove(emp); } } } } //雇員類 class Emp { // 學號 private String empNo; private String name; private float sal; // 構造函數 public Emp(String empNo, String name, float sal) { super(); this.empNo = empNo; this.name = name; this.sal = sal; } public String getEmpNo() { return empNo; } public void setEmpNo(String empNo) { this.empNo = empNo; } public String getName() { return name; } public void setName(String name) { this.name = name; } public float getSal() { return sal; } public void setSal(float sal) { this.sal = sal; } }