map常用的声明方式(使用静态代码块):

    public final static Map map = new HashMap();
static {
map.put("key1", "value1");
map.put("key2", "value2");
}

一种简约方式:

public class ConstMap {
public static final Map<String, String> MAP_CONST = new HashMap(){{
put("","");
put("1","我");
put("2","你");
put("3","他");
}};
}

这种方式,相当于重载HashMap的一个匿名实现。向原有的HashMap中添加了一个匿名构造方法。

List/Set变量的声明方式:

public final static List list = Arrays.asList("111", "222");  

另外一种map常量方式:

添加guava依赖:

<!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>23.0</version>
</dependency>

代码:

import com.google.common.collect.ImmutableMap;
import java.util.Map; public interface ConstantMap {
Map<String,String> MAP_TEST = new ImmutableMap.Builder<String,String>()
.put("","")
.put("1","我")
.put("2","你")
.build();
}

测试结果:

public class Test {
public static void main(String[] args) {
String name = ConstantMap.MAP_TEST.get("1");
System.out.println(name);//我
}
}

每天学会一点点(map常量)的更多相关文章

  1. Java中定义Map常量,List常量

    一般的方式的使用静态代码块.比如: public final static Map map = new HashMap(); static { map.put("key1", &q ...

  2. 4 常量类--Map常量

    public static final HashMap<String, String> ETL_SOURCE_INPUTTYPE_MAP = new HashMap<String, ...

  3. 每天学会一点点(spring-mvc.xml与web.xml配置文件)

    1.spring-mvc.xml中拦截器的使用 首先在springMVC.xml配置如下代码: <!-- 拦截器 --> <mvc:interceptors> <bean ...

  4. 每天学会一点点(重写equals一定要重写hashcode)

    package com.example.demo.javaError; import java.util.HashMap; /** * Created by yyy on 2019/01/24. */ ...

  5. 每天学会一点点(HashMap实现原理及源码分析)

    HashMap实现原理及源码分析   哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希 ...

  6. 每天学会一点点(JAVA基础)

    1.什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”? 虚拟机是一个可以执行Java字节码的虚拟机进程.Java源文件被编译成能被Java虚拟机执行的字节码文件. Java被设计成允 ...

  7. 在java 中一种简单方式的声明静态Map常量的方法

    我现在需要在一个类里面放一个HashMap,往里面放一些数据,每次要从数据库中取数据的时候先查找HashMap,看是否已经存在,若存在就直接提取,若不存在就从数据库中抽取数据之后再放到HashMap中 ...

  8. 每天学会一点点(枚举enum)

    枚举的特点: enum和class.interface的地位一样 使用enum定义的枚举类默认继承了java.lang.Enum,而不是继承Object类.枚举类可以实现一个或多个接口. 枚举类的所有 ...

  9. JavaScript 常量定义

    相信同学们在看见这个标题的时候就一脸懵逼了,什么?JS能常量定义?别逗我好吗?确切的说,JS当中确实没有常量(ES6中好像有了常量定义的关键字),但是深入一下我们可以发现JS很多不为人知的性质,好好利 ...

随机推荐

  1. 并发知识(2)——关于Thread

    一些容易混淆的知识点 sleep vs wait sleep是Thread,wait是Object方法 wait和notify只能在同步代码块中调用 wait释放锁资源,sleep不释放锁资源 唤醒条 ...

  2. MySQL多表(理论知识总结)

    1. 多表关系    外键    foreign key    添加外键语法:    alter table 表名1 add foreign key(外键名称) references 表名2(主键名称 ...

  3. mac 下 docker 镜像加速器

    配置镜像加速器 具体设置见下图即可. 

  4. 压力测试-jmeter

    1. 场景描述 新申请的服务器,要压测下python算法程序最多能执行多少条数据,有几年没用压力测试工具-jmeter了,重新下载了最新版本,记录下,也希望能帮到准备使用jmeter做压测的朋友. 2 ...

  5. JS判断字符串长度,结合element el-input el-form 表单验证(英文占1个字符,中文汉字占2个字符)

    首先看看判断字符串长度的几种方法(英文占1个字符,中文汉字占2个字符) 方法一: function strlen(str) { var len = 0; for (var i = 0; i < ...

  6. 【openmp】for循环的break问题

    问题描述:在用openmp并行化处理for循环的时候,便无法在for循环中用break语句,那么我们如何实现这样的机制呢?在stackoverflow上看到一个不错的回答总结一下. volatile ...

  7. Mysql: 图解 inner join、left join、right join、full outer join、union、union all的区别

    转载来源 对于SQL的Join,在学习起来可能是比较乱的.我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚. ...

  8. HTTP与HTTPS之面试必备

    本文主要讲解Http与https的区别,以及https是怎样加密来保证安全的. 首先讲这俩个协议的简单区别: HTTP:超文本传输协议. HTTPS:安全套接字层超文本传输协议HTTP+SSL HTT ...

  9. JDK基础必备面试十问

    1. new一个对象在Java内部做了哪些工作? 从静态角度来看,new一个对象表示创建一个类的对象实例. 从JVM运行角度来看,当JVM执行到new字节码时,首先会去查看类有没有被加载到内存以及初始 ...

  10. python历史背诵

    一.python简介 python2:源代码不统一 有重复功能的代码 默认编码是ascii 没有中文 输出中文需要用头文件 #-*-coding=utf-8-*- 进行转换 py3:源代码统一 没有重 ...