mirror of
https://gitee.com/dromara/hutool.git
synced 2025-05-06 05:38:00 +08:00
add put method
This commit is contained in:
parent
3dc6b87333
commit
d01e8b11bb
@ -3,12 +3,13 @@
|
|||||||
|
|
||||||
-------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
# 5.7.5 (2021-07-12)
|
# 5.7.5 (2021-07-14)
|
||||||
|
|
||||||
### 🐣新特性
|
### 🐣新特性
|
||||||
* 【core 】 DateUtil增加ceiling重载,可选是否归零毫秒
|
* 【core 】 DateUtil增加ceiling重载,可选是否归零毫秒
|
||||||
* 【core 】 IterUtil增加firstMatch方法
|
* 【core 】 IterUtil增加firstMatch方法
|
||||||
* 【core 】 增加NanoId
|
* 【core 】 增加NanoId
|
||||||
|
* 【core 】 MapBuilder增加put方法(pr#367@Gitee)
|
||||||
|
|
||||||
### 🐞Bug修复
|
### 🐞Bug修复
|
||||||
* 【core 】 修复FileUtil.normalize处理上级路径的问题(issue#I3YPEH@Gitee)
|
* 【core 】 修复FileUtil.normalize处理上级路径的问题(issue#I3YPEH@Gitee)
|
||||||
|
@ -11,7 +11,7 @@ import java.util.function.Supplier;
|
|||||||
* @param <V> Value类型
|
* @param <V> Value类型
|
||||||
* @since 3.1.1
|
* @since 3.1.1
|
||||||
*/
|
*/
|
||||||
public class MapBuilder<K, V> implements Serializable{
|
public class MapBuilder<K, V> implements Serializable {
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
private final Map<K, V> map;
|
private final Map<K, V> map;
|
||||||
@ -31,8 +31,8 @@ public class MapBuilder<K, V> implements Serializable{
|
|||||||
/**
|
/**
|
||||||
* 创建Builder
|
* 创建Builder
|
||||||
*
|
*
|
||||||
* @param <K> Key类型
|
* @param <K> Key类型
|
||||||
* @param <V> Value类型
|
* @param <V> Value类型
|
||||||
* @param isLinked true创建LinkedHashMap,false创建HashMap
|
* @param isLinked true创建LinkedHashMap,false创建HashMap
|
||||||
* @return MapBuilder
|
* @return MapBuilder
|
||||||
* @since 5.3.0
|
* @since 5.3.0
|
||||||
@ -78,14 +78,27 @@ public class MapBuilder<K, V> implements Serializable{
|
|||||||
/**
|
/**
|
||||||
* 链式Map创建
|
* 链式Map创建
|
||||||
*
|
*
|
||||||
* @param condition put条件
|
* @param k Key类型
|
||||||
* @param k Key类型
|
* @param supplier Value类型结果提供方
|
||||||
* @param v Value类型
|
|
||||||
* @return 当前类
|
* @return 当前类
|
||||||
|
* @since 5.7.5
|
||||||
|
*/
|
||||||
|
public MapBuilder<K, V> put(K k, Supplier<V> supplier) {
|
||||||
|
return put(k, supplier.get());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 链式Map创建
|
||||||
|
*
|
||||||
|
* @param condition put条件
|
||||||
|
* @param k Key类型
|
||||||
|
* @param v Value类型
|
||||||
|
* @return 当前类
|
||||||
|
* @since 5.7.5
|
||||||
*/
|
*/
|
||||||
public MapBuilder<K, V> put(boolean condition, K k, V v) {
|
public MapBuilder<K, V> put(boolean condition, K k, V v) {
|
||||||
if (condition) {
|
if (condition) {
|
||||||
map.put(k, v);
|
put(k, v);
|
||||||
}
|
}
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
@ -94,13 +107,14 @@ public class MapBuilder<K, V> implements Serializable{
|
|||||||
* 链式Map创建
|
* 链式Map创建
|
||||||
*
|
*
|
||||||
* @param condition put条件
|
* @param condition put条件
|
||||||
* @param k Key类型
|
* @param k Key类型
|
||||||
* @param supplier Value类型结果提供方
|
* @param supplier Value类型结果提供方
|
||||||
* @return 当前类
|
* @return 当前类
|
||||||
|
* @since 5.7.5
|
||||||
*/
|
*/
|
||||||
public MapBuilder<K, V> put(boolean condition, K k, Supplier<V> supplier) {
|
public MapBuilder<K, V> put(boolean condition, K k, Supplier<V> supplier) {
|
||||||
if (condition) {
|
if (condition) {
|
||||||
map.put(k, supplier.get());
|
put(k, supplier);
|
||||||
}
|
}
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
@ -138,7 +152,7 @@ public class MapBuilder<K, V> implements Serializable{
|
|||||||
/**
|
/**
|
||||||
* 将map转成字符串
|
* 将map转成字符串
|
||||||
*
|
*
|
||||||
* @param separator entry之间的连接符
|
* @param separator entry之间的连接符
|
||||||
* @param keyValueSeparator kv之间的连接符
|
* @param keyValueSeparator kv之间的连接符
|
||||||
* @return 连接字符串
|
* @return 连接字符串
|
||||||
*/
|
*/
|
||||||
@ -149,7 +163,7 @@ public class MapBuilder<K, V> implements Serializable{
|
|||||||
/**
|
/**
|
||||||
* 将map转成字符串
|
* 将map转成字符串
|
||||||
*
|
*
|
||||||
* @param separator entry之间的连接符
|
* @param separator entry之间的连接符
|
||||||
* @param keyValueSeparator kv之间的连接符
|
* @param keyValueSeparator kv之间的连接符
|
||||||
* @return 连接后的字符串
|
* @return 连接后的字符串
|
||||||
*/
|
*/
|
||||||
@ -160,9 +174,9 @@ public class MapBuilder<K, V> implements Serializable{
|
|||||||
/**
|
/**
|
||||||
* 将map转成字符串
|
* 将map转成字符串
|
||||||
*
|
*
|
||||||
* @param separator entry之间的连接符
|
* @param separator entry之间的连接符
|
||||||
* @param keyValueSeparator kv之间的连接符
|
* @param keyValueSeparator kv之间的连接符
|
||||||
* @param isIgnoreNull 是否忽略null的键和值
|
* @param isIgnoreNull 是否忽略null的键和值
|
||||||
* @return 连接后的字符串
|
* @return 连接后的字符串
|
||||||
*/
|
*/
|
||||||
public String join(String separator, final String keyValueSeparator, boolean isIgnoreNull) {
|
public String join(String separator, final String keyValueSeparator, boolean isIgnoreNull) {
|
||||||
|
@ -23,7 +23,6 @@ public class MapBuilderTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String getValue(int value) {
|
public String getValue(int value) {
|
||||||
System.out.println("getValue: " + value);
|
|
||||||
return String.valueOf(value);
|
return String.valueOf(value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user