This commit is contained in:
Looly
2020-07-06 16:18:34 +08:00
parent 48d67f0859
commit 25b9d61ffd
4 changed files with 22 additions and 5 deletions

View File

@@ -463,6 +463,11 @@ public class Dict extends LinkedHashMap<String, Object> implements BasicTypeGett
return super.put(customKey(key), value);
}
@Override
public void putAll(Map<? extends String, ?> m) {
m.forEach(this::put);
}
@Override
public Dict clone() {
return (Dict) super.clone();

View File

@@ -38,9 +38,7 @@ public abstract class CustomKeyMap<K, V> extends MapWrapper<K, V> {
@Override
public void putAll(Map<? extends K, ? extends V> m) {
for (Map.Entry<? extends K, ? extends V> entry : m.entrySet()) {
this.put(entry.getKey(), entry.getValue());
}
m.forEach(this::put);
}
@Override

View File

@@ -1,10 +1,11 @@
package cn.hutool.core.lang;
import cn.hutool.core.date.DateTime;
import org.junit.Assert;
import org.junit.Test;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.lang.Dict;
import java.util.HashMap;
import java.util.Map;
public class DictTest {
@Test
@@ -17,4 +18,16 @@ public class DictTest {
Long v2 = dict.getLong("key2");
Assert.assertEquals(Long.valueOf(1000L), v2);
}
@Test
public void dictTest2(){
final Dict dict = new Dict(true);
Map<String, Object> map = new HashMap<>();
map.put("A", 1);
dict.putAll(map);
Assert.assertEquals(1, dict.get("A"));
Assert.assertEquals(1, dict.get("a"));
}
}