在Java中寻找标准库函数方法,以便根据键在两个映射中添加值.
Map A: {a=1, b=2}
Map B: {a=2, c=3}
Run Code Online (Sandbox Code Playgroud)
结果地图:
Map C: {a=3, b=2, c=3}
Run Code Online (Sandbox Code Playgroud)
我知道这可以用几行编码.我也知道函数式编程对此非常有用.如果有人使用的标准函数或语法,我只是在徘徊.
像(但可能更通用)的东西:
public HashMap<String,Double> addValues(HashMap<String,Double> a, HashMap<String,Double> b) {
HashMap<String,Double> ret = new HashMap<String,Double>(a);
for (String s : b.keySet()) {
if (ret.containsKey(s)) {
ret.put(s, b.get(s) + ret.get(s));
} else {
ret.put(s, b.get(s));
}
}
return ret;
}
Run Code Online (Sandbox Code Playgroud)
我试图用Kryo序列化一个包含Joda-Time的LocalDate的类。
看来我需要定制的序列化程序。
我在https://github.com/magro/kryo-serializers中找到了一些Joda-Time序列化程序,但LocalDate没有。
有什么帮助吗?我应该写我自己的:(?
(有人将此标记为将包含JodaTime对象的序列化自定义对象复制到JSON中,但这是有关现有Kyro序列化器的问题,我看不到有关自定义JSON序列化器的答案如何解决我的问题...)