zoukankan      html  css  js  c++  java
  • HashMap和LinkedHashMap

     HashMap集合

    HashMap存取没有顺序

    HashMap存储自定义类型键值

    实例

    l  学生类

    publicclass Student {

         private String name;

         privateintage;

     

         //编写构造方法,文档中已省略

         //编写get,set方法,文档中已省略

         //编写toString方法,文档中已省略

    }

    l  测试类

    publicclass HashMapTest {

         publicstaticvoid main(String[] args) {

             //1,创建hashmap集合对象。

             Map<Student,String>map = new HashMap<Student,String>();

            

             //2,添加元素。

             map.put(new Student("lisi",28), "上海");

             map.put(new Student("wangwu",22), "北京");

             map.put(new Student("zhaoliu",24), "成都");

             map.put(new Student("zhouqi",25), "广州");

             map.put(new Student("wangwu",22), "南京");

            

             //3,取出元素。键找值方式

             Set<Student>keySet = map.keySet();

             for(Student key : keySet){

                  String value = map.get(key);

                  System.out.println(key.toString()+"....."+value);

             }

            

             //取出元素。键值对方式

             Set<Map.Entry<Student, String>>entrySet = map.entrySet();

             for (Map.Entry<Student, String>entry : entrySet) {

                  Student key = entry.getKey();

                  String value = entry.getValue();

                  System.out.println(key.toString()+"....."+value);

             }

         }

    }

    l  当给HashMap中存放自定义对象时,如果自定义对象作为key存在,这时要保证对象唯一,必须复写对象的hashCode和equals方法(如果忘记,请回顾HashSet存放自定义对象)。

    l  如果要保证map中存放的key和取出的顺序一致,可以使用LinkedHashMap集合来存放

     

     

    LingkedHashMap集合

    LingkesHashMap存储取出有序

    LinkedHashMap<person, String> map = new LinkedHashMap<person, String>();
    person p1 = new person("张三", 18);
    person p2 = new person("张si", 20);
    person p3 = new person("张三", 18);
    map.put(p1, "一般");
    map.put(p2, "二般");
    map.put(p3, "三般");
    Set<person> set=map.keySet();
    for(person s:set){
    System.out.println(s+"...."+map.get(s));
    }
    }

     

  • 相关阅读:
    Data Mining --- Information theory:熵/条件熵/互信息(信息增益)/交叉熵(相对熵/KL距离)
    Data Minig --- Decision Tree & ID3 & C4.5 & Gini Index
    Machine Learning --- Boosting & AdaBoost & Bootstrap
    Machine Learning --- Logistic Regression
    jpa动态创建EntityManagerFactory 态设置数据库连接 EntityManager;
    Spring+jpa+access
    关于JDBC 连接Access 数据库
    关于JPA封装数据库数据到实体不调用属性的get和set的方法解决办法
    JDBC和JPA调用储存过程 接收存储过程有返回值
    springMVC+JAP整合彻底摆脱persistence.xml配置文件
  • 原文地址:https://www.cnblogs.com/1997WY/p/10442181.html
Copyright © 2011-2022 走看看