• Java集合类之HashMap


    package com.test;
    import java.util.*;
    
    public class Demo7_3 {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
    
            Emp emp1 = new Emp("s001", "aaa", 12.3f);
            Emp emp2 = new Emp("s002", "bbb", 5.3f);
            Emp emp3 = new Emp("s003", "李逵", 52f);
    
            //创建一个HashMap对象
            HashMap hm = new HashMap();
            //将emp放入到hm
            hm.put("s001", emp1);
            hm.put("s002", emp2);
            //会将前面的值覆盖,不允许k重复
            //hm.put("s002", emp3);
    
            hm.put("s003", emp3);
    
            //如果你要查找编号是s002的人
            if(hm.containsKey("s002"))//返回布尔值
            {
                System.out.println("有该员工");
                //如何取出,键<-->值
                Emp emp = (Emp)hm.get("s002");
                System.out.println("员工姓名是"+emp.getName());
                
            }
            else
            {
                System.out.println("没有该员工");
            }
            
            //遍历HashMap中所有的key和value
            //迭代器
            Iterator it = hm.keySet().iterator();
            //hasNext返回一个boolean值,看看是否还有下一个
            //HashMap取出来的是乱序的,不是按照预先的顺序取出
            while(it.hasNext())
            {
                //取出key  it.next()返回的是object类型,用toString转换成字符串
                //根据自己之前所写的键值的数据类型,定义相应数据类型的变量来接收
                String key = it.next().toString();
                Emp emp = (Emp)hm.get(key);
                System.out.println("名字是"+emp.getName());
                System.out.println("薪水是"+emp.getSal());
            }
        }
    }
    
    //雇员管理类
    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;
        }
    
    }
  • 相关阅读:
    [2013-08-19] nohup的使用
    HttpParser 相关链接文章
    CKEditor禁用浏览服务器的功能
    (转载)MySQL删除所有表的外键约束、禁用外键约束
    js Object扩展自定义方法,jQuery抛出 Uncaught TypeError: matchExpr[type].exec is not a function
    Javascript 占位符替换
    Springboot 抛出Failed to determine a suitable driver class异常原因
    jpa CriteriaQueryNo explicit selection and an implicit one could not be determined
    Spring ModelAttribute注解失效原因
    Spring Data Jpa 更新操作
  • 原文地址:https://www.cnblogs.com/beautiful-code/p/5346724.html
Copyright © 2020-2023  润新知