Lua常用语法
· 阅读需 0 分钟
遇到一个特别需要注意的Map集合使用问题,就是Map#put方法的返回值到底是什么,主要有以下几种情况:
1、如果之前已经有对应的key,如果此时再放入一个相同key的值,此时是做更新覆盖操作,返回旧值 2、如果之前没有对应的key,则执行添加操作,返回NULL
Map<String, Integer> cache = new HashMap<>();
Integer r1=cache.put("key1",100); //返回NULL
Integer r2=cache.put("key1",200); //返回100 覆盖
备注:规则适用于Map下的各种实现,例如HashMap、ConcurrentHashMap都有相同的规则。
补充:如果需要实现如果已经有对应key存在的时候不做任何操作,可以使用框架提供的另一个方法Map#putIfAbsent,案例如下:
HashMap<Object, Object> map = new HashMap<>();
Object o = map.putIfAbsent("1", "2");
System.out.println(o);//返回的是null
System.out.println("--");
Object o1 = map.putIfAbsent("1", "3");//key已经存在了,所以返回的是之前的值 不做任何操作
System.out.println(o1);//返回的是之前的值 o1=2
介绍一些常见的MySQL性能优化实践方法,优化和没有优化过的数据库性能具有天壤之别,特别是真实生产环境中,数据量特别大,动不动就是成千上万,如果不进行性能优化,那么用户体验将会极致拉低,开发中开发者首要做的优化就是查询优化,大部分场景都是读多写少。 下面介绍几种不同维度的优化方法以及开发规范。