关于map

来源:互联网 发布:淘宝修改密码在哪里 编辑:程序博客网 时间:2024/06/06 05:42


   HashMap:
   1.key使用Set来存放的,不可重复,value使用Collection来存放的,可重复
  一个key-value对,是一个Entry,所有的Entry使用Set存放的,也是不可重复的
  2.向HashMap中添加元素时,会调用key所在类的equals()方法,判断两个key是否相同
  
  
 @Test
 public void test(){
  Map map = new HashMap();
  map.put("AA", 123);
  map.put("BB", 456);
  //map.put("BB", 45);
  map.put(123, "CC");
  map.put(null, null);
  map.put(new Person("DD",23), 89);
  map.put(new Person("DD",23), 87);
  System.out.println(map.size());
  System.out.println(map);
  map.remove("BB");
  System.out.println(map);
  Object value = map.get(123);
  System.out.println(value);
  
 }
 
 @Test
 public void test2(){
  Map map = new HashMap();
  map.put("AA", 123);
  map.put("BB", 456);
  //map.put("BB", 45);
  map.put(123, "CC");
  map.put(null, null);
  map.put(new Person("DD",23), 89);
  map.put(new Person("DD",23), 87);
  
  1.遍历key键
  Set set = map.keySet();
  for (Object object : set) {
   System.out.println(object);
  }
  System.out.println();
  //2.遍历value集合
  Collection values = map.values();
  Iterator i = values.iterator();
  while (i.hasNext()) {
   System.out.println(i.next());
   
  }
  System.out.println();
  //3.如何遍历key-value对
  //方式一:
  Set set1 = map.keySet();
  for (Object object : set1) {
   System.out.println(object + "-->"+map.get(object));
  }
  System.out.println();
  //方式二:
  Set set2 = map.entrySet();
  for (Object object : set2) {
   Map.Entry entry = (Entry) object;
   System.out.println(entry.getKey()+"-->"+entry.getValue());
  }
  
 }
 //@Test
 public void test3(){
  Map map = new LinkedHashMap();
  map.put("AA", 123);
  map.put("BB", 456);
  //map.put("BB", 45);
  map.put(123, "CC");
  map.put(null, null);
  map.put(new Person("DD",23), 89);
  map.put(new Person("DD",23), 87);
  
  Set set = map.entrySet();
  for (Object object : set) {
   System.out.println(object);
  }
  
 }
 //@Test
 public void test4(){
  Map map = new TreeMap();
  map.put(new Person("AA",23),89);
  map.put(new Person("MM",22),79);
  map.put(new Person("GG",23),99);
  map.put(new Person("JJ",13),69);
  
  Set set = map.keySet();
  for (Object object : set) {
   System.out.println(object+"-->"+map.get(object));
  }
  
  
 }
 
 //@Test
 public void test5(){
  Comparator com = new Comparator() {

   @Override
   public int compare(Object o1, Object o2) {
    if(o1 instanceof Customer && o2 instanceof Customer){
     Customer c1 = (Customer)o1;
     Customer c2 = (Customer)o2;
     int i = c1.getName().compareTo(c2.getName());
     if( i ==0 ){
      return c1.getName().compareTo(c2.getName());
     }
     return i;
    }
    return 0;
   }
  };
  
  TreeMap map = new TreeMap(com);
  map.put(new Person("AA",23),89);
  map.put(new Person("MM",22),79);
  map.put(new Person("GG",23),99);
  map.put(new Person("JJ",13),69);
  
  Set set = map.keySet();
  for (Object o : set) {
   System.out.println(o);
  }
  
  
 }
 @Test
 public void test6() throws FileNotFoundException, IOException{
  //使用Properties处理属性文件
  Properties p = new Properties();
  p.load(new FileInputStream(new File("jdbc.properties")));
  String user = p.getProperty("user");
  System.out.println(user);

}

}

原创粉丝点击