深入浅析java项目中的地图

  介绍

本篇文章给大家分享的是有关深入浅析java项目中的地图,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

<强>地图接口

地图类似y (x)=x,这样的函数(主要对应x值对应y)

地图与收集并列存在。用于保存具有映射关系的数据:键值

中映射的键和值都可以是任何引用类型的数据

中映射的键用组来存放,不允许重复,即同一个地图对象所对应的类,须重写hashCode()和equals()方法。

常用字符串类作为地图的“键”。

键和值之间存在单向一对一关系,即通过指定的关键总能找到唯一的,确定的价值。

<强>地图接口

丨- - - - - - - - - - hashmap:地图的主要实现类         丨- - - - - - - - - - treemap:按照添加进地图中的元素的关键的指定属性进行排序,要求:关键必须是同一个类的对象!针对关键:自然排序vs定制排序      丨- - - - - - - - - -哈希表:是一个古老的实现类,线程安全,与HashMap不同,它不允许使用零作为键和值(不建议使用)(有多老!看命名就知道,连驼峰命名法都木有用的上!哈哈哈哈哈!)      丨- - - - - - - - - -属性:常用来处理属性文件。键和值都为字符串类型的。(这儿你常用的配置文件就是)
公共类TestMap {/*
  *
  *对象(对象,对象值):向地图中添加一个元素
  *
  *删除对象(对象键):按照指定的关键删除此键-值对
  *
  *空putAll (t)地图:
  *
  *空隙清晰():清空
  *
  *对象(对象键):获取指定键的值值,若无此键则返回零
  *
  *布尔containsKey(对象键):
  *
  *布尔containsValue(对象值)
  *
  * int大小()
  *
  *布尔isEmpty ()
  *
  *布尔=(对象obj)
  *
  * HashMap:
  * 1.的关键是用组来存放的,不可重复,价值是用收集来存放的,可重复
  *一个键-值对,是一个条目,所有的条目是用设置存放的,也是不可重复的。
  * 2 .向HashMap中添加元素时,会调用关键所在类的equals()方法,判断两个关键是否相同,若相同则只能够添加进一个,则只能添加进后加的那个元素
  *
  *///两个把的钥匙相同,输出结果为后加进去的那个,所以输出是价值=https://www.yisu.com/zixun/87
  
  公共空间test1 () {
  
  地图地图=new HashMap ();
  map.put (“AA”, 213);
  map.put (" BB ", 456);
  map.put (“BB”, 45);//与上边的键相同所以地图中是这个
  map.put(123年,“CC”);
  map.put(空,空);
  地图。把(新人(“xx”, 21), 89);
  地图。把(新人(“xx”, 21), 87);//与上边的关键相同所以地图中是这个
  System.out.println (map.size ());
  map.remove (“BB”);
  System.out.println(地图);
  对象价值=map.get (123);
  System.out.println(价值);
  
  }/*
  
  如何遍历地图
  设置键盘()
  集合值()
  设置entrySet ()
  
  */@Test
  公共空间test2 () {
  
  地图地图=new HashMap ();
  map.put (“AA”, 213);
  map.put (“BB”, 45);
  map.put(123年,“CC”);
  map.put(空,空);
  地图。把(新人(“xx”, 21), 89);//1 .遍历键集。此时打印输出空,AA,人//[name=DD,=23岁],BB, 123年
  设置组=map.keySet ();
  (对象obj:集){
  System.out.println (obj);
  }//2 .遍历值集。此时打印输出空,213年,89年,45岁的CC
  收藏价值=map.values ();
  迭代器i=values.iterator ();
  而(i.hasNext ()) {
  System.out.println (i.next ());
  }//3 .如何遍历键-值对//方式一
  设置set2=map.keySet中的();
  (对象其中obj1: set2)中的{
  system . out。println (obj +“- - - - - ->”+ map.get (obj));
  
  }//方式二
  设置关于我校=map.entrySet ();
  (对象obj:关于我校){
  地图。输入条目=(map . Entry) obj;
  System.out.println (entry.getKey () +”——>“+ entry.getValue ());
  }
  }
  
  
  @Test
  公共空间testLinkedHashMap () {
  
  地图地图=new LinkedHashMap ();
  map.put (“AA”, 213);
  map.put (“BB”, 45);
  map.put(123年,“CC”);
  map.put(空,空);
  地图。把(新人(“xx”, 21), 89);
  
  设置set2=map.keySet中的();
  (对象其中obj1: set2)中的{
  system . out。println (obj +“- - - - - ->”+ map.get (obj));
  }
  }
  
  @Test
  公共空间testTreeMap () {//自然排序
  地图地图=new TreeMap ();
  地图。把(新人(“AA”、23), 89);
  地图。把(新人(“毫米”,22),79);
  地图。把(新人(“BB”、23), 99);
  地图。把(新人(“CC”, 13), 69);
  
  设置set2=map.keySet中的();
  (对象其中obj1: set2)中的{
  system . out。println (obj +“- - - - - ->”+ map.get (obj));
  }
  }
  
  
  @Test
  公共空间testProperties () {
  
  利=new属性();
  优点。负载(新FileInputStream(新文件(jdbc。属性)));
  字符串的用户=pros.getProperty(“用户”);
  字符串密码=pros.getProperty(“密码”);
  
  }
  }

深入浅析java项目中的地图