🎉 增强kv的创建功能

This commit is contained in:
smallchill 2025-02-24 17:45:16 +08:00
parent 956268f7f5
commit 7a160bc8ba

View File

@ -22,6 +22,7 @@ import java.sql.Time;
import java.sql.Timestamp;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* 链式map
@ -52,6 +53,51 @@ public class Kv extends LinkedCaseInsensitiveMap<Object> {
return new Kv();
}
/**
* 创建Kv
*
* @param value 初始化数据
* @return Kv
*/
public static Kv create(Kv value) {
Kv kv = new Kv();
kv.putAll(value);
return kv;
}
/**
* 从Map创建Kv
*
* @param map 初始化数据
* @return Kv
*/
public static Kv create(Map<?, ?> map) {
Kv kv = new Kv();
if (map != null) {
map.forEach((key, value) -> kv.set(String.valueOf(key), value));
}
return kv;
}
/**
* 从对象创建Kv
*
* @param value 源对象
* @return Kv
*/
public static Kv create(Object value) {
Kv kv = new Kv();
if (value != null) {
if (value instanceof Map) {
return create((Map<?, ?>) value);
} else {
kv.set("object", value);
}
}
return kv;
}
public static <K, V> HashMap<K, V> newMap() {
return new HashMap<>(16);
}