第一种方法:static块初始化

public class Demo{
private static final Map<String, String> myMap;
static
{
myMap = new HashMap<String, String>();
myMap.put("a", "b");
myMap.put("c", "d");
}
}

第二种方法:双括号初始化 (匿名内部类)

HashMap<String, String > h = new HashMap<String, String>(){{
put("a","b");
}};

慎用, 非静态内部类/ 匿名内部类包含了外围实例的引用, 如果拥有比外部类更长的生命周期,有内存泄露隐患
第三种方法:Guava

使用guava创建一个HashMap时,可以这样。Map<String, Object> hashMap  = Maps.newHashMap();

Map<String, Integer> left = ImmutableMap.of("a", 1, "b", 2, "c", 3);
//或者
Map<String, String> test = ImmutableMap.<String, String>builder()
.put("k1", "v1")
.put("k2", "v2")
...
.build();

这种方式的弊端是map被初始化后不能在进行put操作

转载于:https://www.cnblogs.com/pypua/articles/9907831.html

JAVA构造MAP并初始化MAP相关推荐

  1. Java构造时成员初始化的陷阱

    今天看到一篇标题:"Java构造时成员初始化的陷阱"的文章:http://coolshell.cn/articles/1106.html 自已写了一个简单的程序测试了一下: pub ...

  2. 【Flutter】Dart 数据类型 Map 类型 ( 创建 Map 集合 | 初始化 Map 集合 | 遍历 Map 集合 )

    文章目录 一. Dart 数据类型 Map 类型 二. Map 类型初始化并赋值 1. 创建 Map 对象同时进行初始化操作 2. 先创建 Map 对象再进行赋值 三. Map 集合遍历 1. 使用 ...

  3. JAVA 构造 MAP 并初始化 MAP、定义时就初始化

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 第一种方法:static块初始化 public class Demo{private static ...

  4. Java集合框架List,Map,Set等全面介绍

    Java Collections Framework是Java提供的对集合进行定义,操作,和管理的包含一组接口,类的体系结构. Java集合框架的基本接口/类层次结构: java.util.Colle ...

  5. JAVA 中的 Collection 和 Map 以及相关派生类的概念

    JAVA中Collection接口和Map接口的主要实现类 Collection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素 ...

  6. Java集合篇:Map接口、Map接口的实现类、Collections集合工具类

    目录 一.Map接口 1.1 Map接口概述 1.2 Map接口常用功能 二.Map接口的实现类 2.1 Map实现类之一:HashMap 2.1.1 HashMap概述 2.1.2 HashMap的 ...

  7. C++知识点30——使用C++标准库(关联容器map及其初始化,赋值,查找,添加,删除与迭代器失效)

    一.关联容器简介 关于顺序容器和关联容器的区别已经在博客https://blog.csdn.net/Master_Cui/article/details/107427911中提过 C++标准库中的关联 ...

  8. Java集合Set,List和Map等

    Java集合Set,List和Map等 1 Java集合框架 因为Java是面向对象的语言,对事物的体现都是以对象的形式,为了方便对多个对象的操作,就要对对象进行存储.另一方面,使用Array存储对象 ...

  9. java map removeall_Java删除Map中元素

    前言: 关于Java从Map中删除元素的使用,可以使用删除单个元素的事实Map.remove. 示例: 初始化一个Map对象 Map map = new HashMap<>(); map. ...

最新文章

  1. So many interfaces!
  2. 【转】Nginx系列(五)--nginx+tomcat实现负载均衡
  3. matlab模糊规则ruleList的解释
  4. 在香蕉派的树莓派系统上配置 Syncthing 自启动(暨 Linux 软件自启服务配置)
  5. Oracle 10g Audit(审计) --- 记录登录用户在Oracle中的所有操作(转)
  6. STM32工作笔记0082---UCOSIII系统中的OSIntEnter() 与 OSIntExit()
  7. 客户端如何获取服务器控件的值(原理与实例)
  8. 精细运营,这只“蚂蚁”开辟了一条全新的财富之路
  9. 同IP不同端口导致session冲突的解决方法
  10. 毁三观:从 onSavedInstanceState 中取值竟为空?!
  11. 【angular】@Directive
  12. matlab日期转儒略历,matlab儒略日转为日期
  13. linux的网络管理,Linux之网络管理
  14. linux中的head 显示文件头部内容、tail 输出文件尾部内容
  15. PTA-C理论B类题库6-3使用函数求最大公约数(辗转相除法的实现)
  16. 数据库设计之实体E-R图
  17. python实用代码2:自动爬找下载电影
  18. Excel制作进度表的方法
  19. thinkpad x61-lg2装XP
  20. [乐意黎]全国公共 DNS 服务器 IP 地址

热门文章

  1. Java设计模式 - 单例模式详解(下)
  2. Selenium--调用js,对话框处理 (python)
  3. 给Clouderamanager集群里安装基于Hive的大数据实时分析查询引擎工具Impala步骤(图文详解)...
  4. windows下安装以及配置nginx
  5. Android混淆打包
  6. iOS - 内购_类型
  7. 佩特来项目经验小集合(2)___组合查询存储过程,报错 quot;varchar JBID=#39;#39; 转换成数据类型 int 时失败quot;...
  8. 115 存至网盘 也有限制?
  9. 编译DirectShow Samples
  10. 多项式乘法c语言,急!!!!c语言:求n次多项式的加法和乘法