java.util.Map(Map集合的常用方法)

导读:本篇文章讲解 java.util.Map(Map集合的常用方法),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

开发中最常用的就是List集合和Map集合,Map集合是基于java核心类——java.util中的;
Map集合用于储存元素对,Map储存的是一对键值(key和value),是通过key映射到它的value;

下面介绍的是Map集合的一些经常用到的方法以及代码示例。

map.size();

方法作用:获取map集合类的大小(map集合包含键值对关系映射的数量)

示例:

public static void main(String[] args) {
        //new出map实例
       Map map = new HashMap();
        //向map实例中添加键值
        map.put("1","桃子");
        map.put("2","苹果");
        map.put("3","梨");
        //返回值为int类型
        int size = map.size();
	//输出size
	System.out.println("map实例中的键值个数为:"+size);

     }

map.values();

方法作用:获取map集合类所有的值(value)

示例:

public static void main(String[] args) {
        //new出map实例
        Map map = new HashMap();
        //向map实例中添加键值
        map.put("1","桃子");
        map.put("2","苹果");
        map.put("3","梨");
	//得到map实例中所有的value,返回值类型为Collection
	Collection values = map.values();
	//输出values
	System.out.println("map实例中所有的值(value)为"+values);
    }

map.keySet();

方法作用:获取map集合所有的键(key)

示例

public static void main(String[] args) {
        //new出map实例
        Map map = new HashMap();
        //向map实例中添加键值
        map.put("1","桃子");
        map.put("2","苹果");
        map.put("3","梨");
	//获取map实例中所有的键(key),返回值类型为Set
	Set set = map.keySet();
	//输出set
	System.out.println("map实例中所有的key为:"+set);
    }

map.get();//形参为key的名字

方法作用:通过键(key)的名字获取和键相匹配的值(方法映射),如果key或者value为空,则返回null;

示例:

public static void main(String[] args) {
        //new出map实例
        Map map = new HashMap();
        //向map实例中添加键值
        map.put("1","桃子");
        map.put("2","苹果");
        map.put("3","梨");
	//通过key获取value
	Object o = map.get("1");
	//输出o
	System.out.println("得到的value为:"+o);
    }

map.remove()//形参为key

方法作用:根据key移除map中的与该key对应的value

示例:

public static void main(String[] args) {
        //new出map实例
        Map map = new HashMap();
        //向map实例中添加了3个键值
        map.put("1","桃子");
        map.put("2","苹果");
        map.put("3","梨");
	//移除key为1的键值
	map.remove("1");
	//输出map的大小
	System.out.println("移除后的map大小为:"+map.size());//此处输出为2
    }

map.clear();//形参为空,返回值为空

方法作用:清空Map集合中所有的键值

示例:

public static void main(String[] args) {
        //new出map实例
        Map map = new HashMap();
        //向map实例中添加了3个键值
        map.put("1","桃子");
        map.put("2","苹果");
        map.put("3","梨");
	//清空map的键值
	map.clear();
	//输出map的大小
	System.out.println("清空后的map大小为:"+map.size());//此处输出为0
    }

Entry

作用:Entry是Map集合中的一个内部接口,用于封装Map集合中的一组键值(key和value)

jdk1.5新特性之前的写法为Map.entry<k,v>,jdk1.5的新特性静态导入的导包方式写法为Entry,两种写法达到的效果一致,并没有什么不同。
前者为父类引用指向子类对象,后者是直接调用子类对象。
示例:

public static void main(String[] args) {
	//获取Map内部接口Entry
	Entry entry;
        //new出map实例
        Map map = new HashMap();
        //向map实例中添加键值
        map.put("1","飞机");
        map.put("2","坦克");
        map.put("3","大炮");
	//获得map中键值对的集合
        Set set = map.entrySet();
        //得到集合的迭代器
        Iterator iterator = set.iterator();
        //遍历迭代器
        while (iterator.hasNext()){
            //遍历出的键值放进entry集合里
            entry=(Map.Entry) iterator.next();
            //得到entry的key
            String key = (String) entry.getKey();
            //得到entry的value
            String value = (String) entry.getValue();
	    //输出key和value
            System.out.println("得到的key为"+key);
            System.out.println("得到的value为"+value);
        }
	
     }

map.putAll()//形参为map集合

方法作用:把一个map集合合并到另一个map集合里

示例:

public static void main(String[] args) {
        //new出map1实例
        Map map1 = new HashMap();
        //向map1实例中添加了3个键值
        map1.put("1","飞机");
        map1.put("2","坦克");
        map1.put("3","大炮");
	//输出map1的大小
	System.out.println("map1的大小为:"+map1.size());//此处输出为3
	//new出map2实例
        Map map2 = new HashMap();
        //向map2实例中添加了2个键值
        map2.put("4","苹果");
        map2.put("5","香蕉");
	//输出map2的大小
	System.out.println("map2的大小为:"+map2.size());//此处输出为2
	//把map2合并到map1里
	map1.putAll(map2);//合并时如果map2的key与map1的key有重复的,则map2的键值覆盖与map1重复的键值
	System.out.println("合并后的map1大小为:"+map1.size());//此处输出为5
	
    }

JDK8新特性新增的lambda表达式遍历Map的方法——Map.forEach();

public static void main(String[] args) {
		Map<String,String> map = new HashMap<>();
		map.put("1","飞机");
		map.put("2","坦克");
		map.put("3","大炮");
		map.forEach((k,v)-> {
		    System.out.println(k+":"+v);
		});
	}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/101266.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!