精华内容
下载资源
问答
  • 2021-02-26 09:20:37

    Map集合:

    个人感觉Map接口以后会经常用到,可以很清晰地查找某个对象,要熟悉其四种遍历方法。特别注意其键值对的键不能是重复的,有想定义有序存取的话,可以使用LinkedHashMap集合。不过定义自定义对象时,要复写其对象的hashCode和equals方法。静态导入的话,不用编辑器的话可以使用下。再定义方法时有多个参数的话,可以使用可变参数,不过只能一个且在最后面。Collections的工具类可以对数据进行升序和打乱顺序。集合是可以嵌套的。

    Map接口概述:

    Map接口下的集合与Collection接口下的集合存储数据的不同在于:

    Map中的集合,元素是以键值对的形式存在的,但是集合中不能包含重复的键,值可以重复,每个键只能对应一个值。常用集合为HashMap集合、LinkedHashMap集合(有序)

    常用方法:

    1、get():获取指定键对应的值;

    2、put():将指定的键与值对应起来,并添加到集合中,返回对应的值,无的话返回null;

    3、remove():移除

    Map集合遍历键找值方式:

    keySet() 返回此key所在的Set集合

    import java.util.HashMap;

    import java.util.Iterator;

    import java.util.Map;

    import java.util.Set;

    public class Demo01 {

    public static void main(String[] args) {

    Map map=new HashMap();

    //存值

    map.put("tom", 18);

    map.put("jerry",19);

    map.put("rose",18);

    map.put("tom",18);

    //删除元素

    map.remove("rose");

    //取值

    System.out.println(map.get("tom"));

    System.out.println(map.get("jerry"));

    System.err.println(map.get("rose"));

    //遍历

    //1.KeySet+增强for

    //获取所有key所在的Set集合

    Set keys=map.keySet();

    //遍历Set集合取到每一个Key,然后再根据key找到对应的值

    for(String key:keys){

    System.out.println(key+"..."+map.get(key));

    }

    System.out.println("...");

    //2.Keyset+iterator

    Set set2=map.keySet();

    Iterator it=set2.iterator();

    while(it.hasNext()){

    String p=it.next();

    System.out.println(p+"..."+map.get(p));

    }

    }

    Entry键值对对象:Map.Entry

    在Map类设计时,提供了一个嵌套接口(又定义一个接口):Entry。Entry将键值对的对应关系封装成了对象。即键值对对象。

    方法:

    getKey()    返回Entry对象中的键

    getValue()  返回Entry对象中的值

    entrySet()     用于返回Map集合中所有的键值对(Entry)对象,以Set集合形式返回。

    import java.util.HashMap;

    import java.util.Iterator;

    import java.util.Map;

    import java.util.Set;public classDemo02 {public static voidmain(String[] args) {

    Map map=new HashMap();

    map.put("1","a");

    map.put("2","a");

    map.put("3","b");

    map.put("3","c");//entrySet遍历(增强for遍历)//1.获取所有结婚证对象存在的Set集合;

    /*Set> set=map.entrySet();

    //2.遍历所有结婚证取到每一个结婚证

    for(Map.Entry entry:set){

    //3.通过每一个结婚证对象获取key

    String key=entry.getKey();

    //4.通过每一个结婚证对象获取value;

    String value=entry.getValue();

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

    }*/

    //迭代器遍历

    Set> set=map.entrySet();

    Iterator> it=set.iterator();while(it.hasNext()){

    Map.Entry entry=it.next();

    String key=entry.getKey();

    String value=entry.getValue();

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

    }

    HashMap存储自定义类型键值:

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

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

    更多相关内容
  • javaMap集合 详解Map集合

    千次阅读 2022-04-08 08:47:41
    java 集合 Map, HashMap,LinkedHashMap,Hashtable, 详解Map集合

    一、Map集合的特点

    Map集合的特点
    1.Map是一个双列集合,一个元素包含两个值(一个key,一个value)

    2.Map集合中的元素,key和value的数据类型可以相同,也可以不同

    3.Map中的元素,key不允许重复,value可以重复

    4.Map里的key和value是一一对应的。

    二、Map中的方法:

    1.public   V  put (K key,V value) 把指定的键和值添加到Map集合中,返回值是V

    如果要存储的键值对,key不重复返回值V是null

    如果要存储的键值对,key重复返回值V是被替换的value值 

    2. public  V remove(Object key)把指定键所对应的键值对元素,在Map集合中删除,返回被删除的元素的值。 返回值:V 。如果key存在,返回被删除的值,如果key不存在,返回null

     

    3.public V remove (Object key):根据指定的键 在Map集合中获取对应的值

    如果key存在,返回对应的value值,如果key不存在,返回null

     

      4.boolean containsKey( Object key)判判断集合中是否包含指定的键

    包含返回true,不包含返回false

    三、遍历Map集合的方式

    1.通过键找值的方法;

    使用了setKey方法,将Map集合中的key值,存储到Set集合,用迭代器或foreach循环遍历Set集合来获取Map集合的每一个key,并使用get(key)方法来获取value值

     

     2.使用Entry对象遍历

    Map.Entry<K,V>,在Map接口中有一个内部接口Entry(内部类)

    作用:当集合一创建,就会在Map集合中创建一个Entry对象,用来记录键与值(键值对对象,键值的映射关系)

     有了Entry对象就可以使用Map中的entrySet方法,把Map集合中的多个Entry对象存入一个Set集合来遍历Set集合,获取Set集合中每一个Entry对象,然后可以使用Entry中的两个方法getKey和getValue来分别获取键和值。

    代码步骤:

     

     

     

    四、Map的常用实现类

    (一)、HashMap

    【1】.特点:1.HashMap底是哈希表,查询速度非常快(jdk1.8之前是数组+单向链表,1.8之后是数组+单向链表/红黑树 ,链表长度超过8时,换成红黑树)

         2. HashMap是无序的集合,存储元素和取出元素的顺序有可能不一致

         3.集合是不同步的,也就是说是多线程的,速度快

    【2】.HashMap存储自定义类型键值

    HashMap存储自定义类型键值,Map集合保证key是唯一的:作为key的元素,必须重写hashCode方法和equals方法,以保证key唯一

     (二)LinkedHashMap

    HashMap有子类LinkedHashMap:LinkedHashMap <K,V> extends HashMap <K,V>

    是Map接口的哈希表和链表的实现,具有可预知的迭代顺序(有序)

    底层原理:哈希表+链表(记录元素顺序)

    特点:1.LinkedHashMap底层是哈希表+链表(保证迭代的顺序)

    2.LinkedHashMap是一个有序的集合,存储元素和取出元素的顺序一致

    改进之处就是:元素存储有序了

    (三)Hashtable

    Hashtable<K,V> implements Map<K,V>

    Hashtable:底层也是哈希表,是同步的,是一个单线程结合,是线程安全的集合,速度慢

    HashMap:底层也是哈希表,但是线程不安全的集合,是多线程集合,速度快

    HashMap(还有之前学的所有集合):都可以存储null键,null值

    Hashtable:不能存储null键,null值

    展开全文
  • Java基础 — 13 Map集合

    2020-12-22 07:31:08
    ** Map集合** 定义: 现实生活中,我们常会看到这样的种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象关系的对象...
  • 定义集合一个存放对象的引用的容器。在Java中,集合位于java.util包下。2. 集合和数组的区别(面试常问)提到容器,就会想起数组,那么集合和数组的区别是什么呢?(这里是重点,面试可能问的比较多)数组和集合都是...

    1. 集合的定义

    什么是集合呢?

    定义:集合是一个存放对象的引用的容器。

    在Java中,集合位于java.util包下。

    2. 集合和数组的区别(面试常问)

    提到容器,就会想起数组,那么集合和数组的区别是什么呢?(这里是重点,面试可能问的比较多)

    数组和集合都是Java中的容器

    数组的长度是固定的,集合的长度是可变的

    数组只能存储相同数据类型的数据,这里的数据类型可以是基本数据类型,也可以是引用类型

    集合可以存储不同数据类型的对象的引用(但一般情况下,我们会使用泛型来约定只使用1种数据类型),但不能存储基本数据类型

    空口无凭,我们来点代码配合理解,首先,我们看下如下的数组代码:

    String[] platformArray = new String[3];

    platformArray[0] = "博客园";

    platformArray[1] = "掘金";

    platformArray[2] = "微信公众号";

    platformArray[3] = "个人博客";

    运行代码就会发现,platformArray[3] = "个人博客";会引发java.lang.ArrayIndexOutOfBoundsException异常。

    而使用集合时就不存在这个问题,因为集合在声明时不需要指定长度并且长度会根据放入元素的多少而变化:

    List platformList = new ArrayList<>();

    platformList.add("博客园");

    platformList.add("掘金");

    platformList.add("微信公众号");

    platformList.add("个人博客");

    观察上面声明数组的代码,我们可以推断出下面的代码肯定是编译不通过的:

    String[] platformArray = new String[3];

    platformArray[0] = "博客园";

    platformArray[1] = "掘金";

    platformArray[2] = 1;

    因为数组声明时用的是String类型,而platformArray[2] = 1;赋值时却使用了int类型。

    再来看下下面的集合代码:

    List intList = new ArrayList();

    intList.add(1);

    intList.add(2);

    intList.add(3);

    这段代码也是编译不通过的,在IDEA中,鼠标悬停时会提示如下的错误信息:

    5e67e1265ca7194c3d56c1cfcef7dce3.png

    意思是类型参数不能是原始类型(基本数据类型),那怎么使用呢?总不能不让我使用int型的集合吧?

    当然不会,Java为每种基本数据类型都提供了对应的包装类,这里修改为int类型对应的包装类Integer即可:

    List intList = new ArrayList();

    intList.add(1);

    intList.add(2);

    intList.add(3);

    以下为Java的原始类型(基本数据类型)与其对应的包装类:

    原始类型(基本数据类型)

    包装类

    byte

    Byte

    short

    Short

    int

    Integer

    long

    Long

    float

    Float

    double

    Double

    char

    Character

    boolean

    Boolean

    3. 集合的分类

    在Java中,集合主要分为以下3种:

    List集合

    Set集合

    Map集合

    它们之间的继承关系可以参考下图。

    d770be92a05060a199602bee0641209f.png

    从上图可以总结出如下几点:

    Java集合的根接口是Collection,它又继承了迭代接口Iterable

    List接口和Set接口继承了Collection接口

    Map接口是独立的接口,并没有继承Collection接口 (这里是重点,面试可能问的比较多)

    List接口常用的实现类有:ArrayList、LinkedList、Vector

    Set接口常用的实现类有:HashSet、LinkedHashSet、TreeSet

    Map接口常用的实现类有:HashMap、HashTable、TreeMap

    4. List集合

    List集合包括List接口以及List接口的所有实现类。List集合具有以下特点:

    集合中的元素允许重复

    集合中的元素是有顺序的,各元素插入的顺序就是各元素的顺序

    集合中的元素可以通过索引来访问或者设置

    List接口常用的实现类有:ArrayList、LinkedList、Vector。

    我们先看下如下示例了解下List集合的用法:

    package collection;

    import java.util.*;

    public class Muster {

    public static void main(String[] args) {

    List strList = new ArrayList<>();

    strList.add("a");

    strList.add("b");

    strList.add("c");

    int i = (int) (Math.random() * strList.size());

    System.out.println("随机获取数组中的元素:" + strList.get(i));

    strList.remove(2);

    System.out.println("将索引为2的元素从列表移除后,数组中的元素是:");

    for (int j = 0; j < strList.size(); j++) {

    System.out.println(strList.get(j));

    }

    }

    }

    以上代码的输出结果为:

    随机获取数组中的元素:a

    将索引为2的元素从列表移除后,数组中的元素是:

    a

    b

    关于List集合的详细用法,ArrayList、LinkedList、Vector的区别(这里是重点,面试可能问的比较多),后续会单独写文总结,敬请期待。

    5. Set集合

    Set集合包括Set接口以及Set接口的所有实现类。Set集合具有以下特点:

    集合中不包含重复元素(你可以重复添加,但只会保留第1个)

    集合中的元素不一定保证有序

    Set接口常用的实现类有:HashSet、LinkedHashSet、TreeSet。

    我们先看下如下示例了解下Set集合的用法:

    package collection;

    import java.util.*;

    public class Muster {

    public static void main(String[] args) {

    Set platformList = new HashSet<>();

    platformList.add("博客园");

    platformList.add("掘金");

    platformList.add("微信公众号");

    platformList.add("个人博客");

    // 尝试添加重复元素

    platformList.add("博客园");

    platformList.add("掘金");

    for (String platform : platformList) {

    System.out.println(platform);

    }

    }

    }

    以上代码的输出结果为:

    博客园

    个人博客

    掘金

    微信公众号

    可以看出,虽然我们尝试添加了重复元素,但并没有添加成功并且输出的元素没有顺序。

    因此当你的集合中不允许有重复元素并且对排序也没有要求的话,可以使用Set集合。

    关于Set集合的详细用法,HashSet、LinkedHashSet、TreeSet的区别(这里是重点,面试可能问的比较多),后续会单独写文总结,敬请期待。

    6. Map集合

    Map集合包括Map接口以及Map接口的所有实现类。Map集合具有以下特点:

    Map接口并没有继承Collection接口,提供的是key到value的映射

    Map中不能包含相同的key

    Map接口常用的实现类有:HashMap、HashTable、TreeMap。

    我们先看下如下示例了解下Map集合的用法:

    package collection;

    import java.util.*;

    public class Muster {

    public static void main(String[] args) {

    Map platformMap = new HashMap<>();

    platformMap.put(1, "博客园");

    platformMap.put(2, "掘金");

    platformMap.put(3, "微信公众号");

    platformMap.put(4, "个人博客");

    // 尝试添加重复Map

    platformMap.put(4, "个人博客");

    // 获取所有的key

    Set keys = platformMap.keySet();

    for (Integer integer : keys) {

    System.out.println("Key:" + integer + ",Value:" + platformMap.get(integer));

    }

    }

    }

    以上代码的输出结果为:

    Key:1,Value:博客园

    Key:2,Value:掘金

    Key:3,Value:微信公众号

    Key:4,Value:个人博客

    从日志可以看出,当我们尝试重加重复Map时,并没有添加成功。

    关于Map集合的详细用法,HashMap、HashTable、TreeMap的区别(这里是重点,面试可能问的比较多),后续会单独写文总结,敬请期待。

    7. 源码及参考

    展开全文
  • 主要介绍了JAVA集合框架Map特性及实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • JAVA中的Map集合

    千次阅读 2021-03-26 23:53:05
    JAVA中的Map集合 1.Map简介 java.util.map接口 1.Map称为查找表,该数据结构的样子是一个“多行两列”的表格,左列为key,右列为value,Map总是根据key查找相对的value,存储元素也要求以key-vaule成对存入。 2.常见...

    JAVA中的Map集合

    1.Map简介

    java.util.map接口

    1.Map称为查找表,该数据结构的样子是一个“多行两列”的表格,左列为key,右列为value,Map总是根据key查找相对的value,存储元素也要求以key-vaule成对存入。

    2.常见的实现类:java.util.HashMap 哈希表

    3.HashMap是基于散列算法实现的Map,也是当前 世界上最快的查询结构。

    2.Map集合常用的几种方法

    1.put(key,value)

    map提供了存储元素的方法,put(key,value);

    Map有一个要求,key不允许重复(key的equals比较而决定)。

    若使用Map已有的Key存入的value则是替代value,那末put方法

    返回的就是被替换的value,若没有替换则返回null,在这里返回类型切记是包装类型,否则会发生空指针异常。

    		Integer n=map.put("语文",100);
    		n=map.put("语文",50);
    		System.out.println(n);
    		System.out.println(map);
    		map.put("数学", 20);
    		map.put("英语",30);
    		map.put("化学",66);
    		//map集合的长度
    		System.out.println(map.size());
    		System.out.println(map);
    
    执行结果:

    100
    {语文=50}
    4
    {数学=20, 化学=66, 语文=50, 英语=30}

    2.get(key k)

    根据给定的key获取对应的value,若给定的key不存在则返回null,
    map提供了获取value值得方法get(key k);

    		//查看英语成绩
    		Integer w=map.get("英语");
    		System.out.println(w);
    
    执行结果:

    30

    3.remove(key k);

    删除当前map中给定得key所对应得这组键值对,返回值为key所对应得value值,如果给定得key不存在,则返回null。 map提供了删除元素得方法remove(key k);

    		Integer y=map.remove("英语");
    		System.out.println("remove后得map集		合:"+map);
    		System.out.println(y);
    
    执行结果:

    remove后得map集合:{数学=20, 化学=66, 语文=50, 英语=30}
    30

    4.containsKey(key k),containsValue(Value v)

    判断当前得map是否包含给定的key或value; map提供了方法Boolean containsKey() ,Boolean containsValue()返回boolean类型.

    public class MapDemo2 {
    	public static void main(String[] args) {
    		Map<String,Integer> map=new HashMap<String, Integer>();
    		map.put("数学", 20);
    		map.put("英语",30);
    		map.put("化学",66);
    		
    		boolean b=map.containsKey("物理");
    		System.out.println(b);
    		
    		boolean p=map.containsValue(30);
    		System.out.println(p);
    		
    		
    	}
    }
    
    执行结果:

    false
    true

    3.Map集合的遍历

    map集合遍历

    map集合遍历的方式有三种:

    1.遍历所有的key

    map提供了Set setKey()将当前map中的所有key存入到一个集合Set中返回遍历这个Set集合相当于遍历所有的key。

    		Map<String, Integer> map=new 	HashMap<String, Integer>();
    		map.put("数学",20);
    		map.put("英语",30);
    		map.put("化学",66);
    		map.put("化学",45);
    
    		Set<String> set=map.keySet();
    		for(String s:set){
    			System.out.println(s);
    		}
    
    执行结果:

    数学
    化学
    英语

    2.遍历所有的value(不常用)

    获取并遍历map集合中的value值,Collection values将当前map中的所有value以一个集合的形式返回;

    		Collection<Integer> c=map.values();
    		for(Integer t:c){
    			System.out.println(t);
    		}
    
    执行结果:

    20
    45
    30

    3.遍历所有的key—value

    遍历每一组键值对
    在map接口定义一个内部接口java.util.map.Entry
    Map提供了entrySet()返回Set 集合,Entry的每一个实例用于表示当前Map集合中的一组键值对,其提供了
    两个常用的方法:
    1.getKey返回key,获取key的值
    2.getValue返回value,获取value的值

    Set<Entry<String, Integer>> entry=map.entrySet();
    		for(Entry<String, Integer> e:entry){
    			String key=e.getKey();
    			Integer value=e.getValue();
    			System.out.println(key+","+value);
    		}
    
    执行结果:

    数学,20
    化学,45
    英语,30

    4.Map中存放List(案例)

    模拟商品分类:

    • 1.一级分类:家用电器
    • 2.二级分类:电视机,冰箱,洗衣机,空调,生活电器
    • 3.三级分类:电视(平板电视,家庭影音),冰箱(对开门冰箱,普通冰箱),空调(壁挂式空调,立柜式空调),生活电器(吸尘器,净化除醛)
    public class MapAndListDemo {
    	public static void main(String[] args) {
    		//一级分类
    		List<String> one=new ArrayList<String>();
    		one.add("家用电器");
    		//二级分类
    		List<String> two=new ArrayList<String>();
    		two.add("电视机");
    		two.add("冰箱");
    		two.add("空调");
    		two.add("生活电器");
    		List<String> three=new ArrayList<String>();
    		three.add("平板电视");
    		three.add("家庭影音");
    		three.add("对开门冰箱");
    		three.add("普通冰箱");
    		three.add("壁挂式空调");
    		three.add("立柜式空调");
    		three.add("吸尘器");
    		three.add("净化除醛");
    		
    		Map<String,Object> map=new HashMap<String,Object>();
    		map.put("one", one);
    		map.put("two",two);
    		map.put("three",three);
    		System.out.println(map);
    		
    		//遍历map集合
    		Set<Entry<String,Object>> entry=map.entrySet();//获取map集合中所有的键值对
    		for(Entry<String, Object> e:entry){//遍历map集合中所有的键值对
    			String key=e.getKey();
    			System.out.println(key);
    			List<String> listvalue=(List<String>)e.getValue();//遍历list集合
    			for(String v:listvalue){
    				System.out.println(v);
    			}
    		}
    	}
    }
    
    执行结果:

    {one=[家用电器], two=[电视机, 冰箱, 空调, 生活电器], three=[平板电视, 家庭影音, 对开门冰箱, 普通冰箱, 壁挂式空调, 立柜式空调, 吸尘器, 净化除醛]}
    one
    家用电器
    two
    电视机
    冰箱
    空调
    生活电器
    three
    平板电视
    家庭影音
    对开门冰箱
    普通冰箱
    壁挂式空调
    立柜式空调
    吸尘器
    净化除醛

    结果说明:

    先往三个list集合中存放元素,再分别将三个list集合以key-value的形式存放到一个map集合中。然后利用entrySet()得到map集合中所有的键值对,再遍历map集合中的键值对,在遍历时要注意,获取key时可以利用getkey直接得到,而获取value时,还要遍历当前的list集合,得到当前list集合中的相关元素。

    5.list集合中存放map集合

    public class MapAndListDemo2 {
    	public static void main(String[] args) {
    		Map<String,Object> map=new HashMap<String, Object>();
    		map.put("name", "lyc");
    		map.put("pwd", "1515");
    		map.put("id", "2");
    		
    		List<Map<String,Object>> list=new ArrayList<Map<String,Object>>();
    		list.add(map);
    		System.out.println(list.size());
    		System.out.println(list);
    		
    		//遍历出所有list中map的所有key和value
    		for(Map<String, Object> s:list){//遍历list集合
    			Set<Entry<String,Object>> entry=s.entrySet();//获取map集合中所有的键值对
    			for(Entry<String, Object> e:entry){//遍历map集合中所有的键值对
    				String key=e.getKey();
    				String value=(String)e.getValue();
    				System.out.println(key+","+value);
    			}
    		}
    	}
    }
    
    
    执行结果:

    1
    [{name=lyc, id=2, pwd=1515}]
    name,lyc
    id,2
    pwd,1515

    结果说明:

    先往map集合中存放键值对,再将map结合存放到list集合中,然后遍历list集合,在遍历list集合时,每次获取到map集合的键值对,再对map集合遍历,这样就可以 得到list集合中map的key和value了。

    展开全文
  • Java中如何取出Map集合中的元素

    千次阅读 2021-02-12 23:20:18
    JavaMap集合中没有迭代器,需要将其转换为set集合/*map集合的两种取出方式:1,SetkeySet:将map中所有的键存入到Set集合。因为set具备迭代器。 所有可以迭代方式取出所有的键,在根据get方法。获取每一个键对应的...
  • Java Map集合

    千次阅读 2019-02-07 10:00:39
    Map集合用于保存映射关系的数据,Map集合中保存了两组值,组是 key, 组是 value。 Map的key不能重复。 key和value之间存在单向的关系, 通过key,能找到唯一的,确定的value。 HashMap和Hashtable是Map...
  • 主要介绍了Java集合定义与用法,结合实例形式总结分析了Java集合中Set、List和Map相关概念、功能、用法及操作注意事项,需要的朋友可以参考下
  • 利用Map集合储存并打印...(2)定义一个map集合存放一组学生信息,键值为学号,value为Student对象。 遍历集合,输出集合中的所有键-值对。 (3)提交源码和运行截图。 package Test; import java.util.HashMap; impo
  • Java基础 Map集合

    千次阅读 2019-07-05 22:04:41
    主要内容 Map集合 教学目标 能够说出Map集合特点 ...第Map集合 1.1概述 现实生活中,我们常会看到这样的种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的...
  • javamap集合的用法

    热门讨论 2013-01-07 22:57:06
    Map 集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值。 从概念上而言,您可以将 List 看作是具有数值键的 Map。 而实际上,除了 List 和 Map 都在定义 java.util 中外,两者并没有直接的联系...
  • 本文档主要讲述的是javamap集合的用法;Map 提供了一个更通用的元素存储方法。 Map 集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值。 从概念上而言,您可以将 List 看作是具有数值键的 Map...
  • Java Map集合的详解

    万次阅读 多人点赞 2016-07-27 21:43:33
    一,Map 先说一下Map吧~ 如果程序中存储了几百万个学生,而且经常需要使用学号来搜索某个学生,那么这个...Map中不能有重复的键(Key),每个键(key)都有一个对应的值(value)。 一个键(key)和它对应的值构成ma
  • Java中如何定义Map常量、List常量呢?

    千次阅读 2022-04-27 23:40:57
    、在Java定义Map常量 1、使用静态代码块: public static final Map map = new HashMap(); static { map.put("key1", "value1"); map.put("key2", "value2"); } 2、简单定义Map常量 public static ...
  • 初始化时定义一个不可改变的Map集合 代码 package com.zhaohp.sofaboot; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org....
  • JavaMap集合的五种迭代方式

    千次阅读 2021-11-24 10:42:58
    JavaMap集合的五种迭代方式 1.首先我们准备一个Student类,用Student的对象作为键,用他们所在的地址作为值 package com.lagou.task04.homework; /** * @author 云梦归遥 * @date 2021/11/24 9:44 * @...
  • Map 集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值。从概念上而言,您可以将 List 看作是具有数值键的 Map。而实际上,除了 List 和 Map 都在定义 java.util 中外,两者并没有直接的联系。...
  • Java基础进阶 自定义泛型、Map集合

    千次阅读 2020-02-18 15:03:25
    自定义泛型 1.1、泛型的定义介绍 在集合中,不管是接口还是类,它们在定义的时候类或接口名的后面都使用<标识符>,当我们在使用的时候,可以指定其中的...说明:在ArrayList类上有一个泛型的参数:E 设计API...
  • Java中关于Map的九大问题

    千次阅读 2021-03-17 19:10:34
    通常来说,Map一个由键值对组成的数据结构,且在集合中每个键是唯一的。下面就以K和V来代表键和值,来说明一下java中关于Map的九大问题。1、将Map转换为List类型在javaMap接口提供了三种集合获取方式:Key set,...
  • Java集合类(List、map、list集合)

    千次阅读 2021-02-26 18:49:11
    1.1集合类的概述Java.util包中提供了一些集合类,这些集合类...常用的集合有List集合、Set集合和Map集合,其中List和Set继承了Collection接口,各接口还提供了不同的实现类。上述集合类的继承关系如图14.1所示:1.1C...
  • Java 如何 定义 静态 map

    千次阅读 2016-01-28 00:28:18
    静态声明 集合 ,诸如Map public static final Map INIT_MAP = new HashMap(); static { INIT_MAP .put("rest_a", REST_A); INIT_MAP .put("rest_b", REST_B); }
  • Java笔记——【Map集合使用】

    千次阅读 2020-11-04 23:57:54
    Map集合 1.1 概述 现实生活中,我们常会看到这样的种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象关系的...
  • Java集合中List,Set以及Map集合体系详解(史上最全)

    万次阅读 多人点赞 2018-06-12 14:09:24
    List Set Map都是接口,前两继承至Collection接口,Map为独立接口 Set下有HashSet,LinkedHashSet,TreeSet List下有ArrayList,Vector,LinkedList Map下有Hashtable,LinkedHashMap,HashMap,TreeMap 还有...
  • 1、Map集合 1.1Map集合介绍 现实生活中,我们常会看到这样的种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等, 这种一一对应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象...
  • map集合存数据与取出数据全部放在一个类MapTest中,方便阅读与查看随便创建一个包,在包中新建一个class文件,(也可以不建包,直接新建一个class文件)新建class文件MapTest.java,代码如下:import java.util....
  • javaMap集合总结

    千次阅读 2020-06-22 20:35:41
    Collection中的集合,元素是孤立存在的(理解为单身),向集合中存储元素采用一个个元素的方式存储。 Map中的集合,元素是成对存在的(理解为夫妻)。每个元素由键与值两部分组成,通过键可以找对所对应的值。 ...
  • java中关于Map的九大问题

    千次阅读 2021-03-17 19:10:31
    java中关于Map的九大问题IT IT哈哈通常来说,Map一个由键值对组成的数据结构,且在集合中每个键是唯一的。下面就以K和V来代表键和值,来说明一下java中关于Map的九大问题。0、将Map转换为List类型在javaMap接口...
  • JavaMap集合的嵌套及遍历

    万次阅读 2018-07-27 15:49:00
    * Map集合的嵌套,Map中存储的还是Map集合 * 要求存储以下数据: * ww一中 * 高三太阳班 * 001 张三 * 002 李四 * * 高三平行班 * 001 王五 * 002 赵六 * 对以上数据进行对象的存储 * 001 张三 键值对 * 高三平行班: ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 240,236
精华内容 96,094
关键字:

java定义一个map集合

java 订阅