Browse Source

enhance countAll

Looly 5 years ago
parent
commit
d24ff836b8
2 changed files with 19 additions and 8 deletions
  1. 2 0
      CHANGELOG.md
  2. 17 8
      hutool-core/src/main/java/cn/hutool/core/map/CustomKeyMap.java

+ 2 - 0
CHANGELOG.md

@@ -16,11 +16,13 @@
 * 【core   】     NumberUtil增加generateRandomNumber重载,可自定义seed(issue#I1XTUT@Gitee)
 * 【core   】     NumberUtil增加generateRandomNumber重载,可自定义seed(issue#I1XTUT@Gitee)
 * 【core   】     DataSizeUtil支持小数(pr#1158@Github)
 * 【core   】     DataSizeUtil支持小数(pr#1158@Github)
 * 【core   】     完善注释(pr#193@Gitee)
 * 【core   】     完善注释(pr#193@Gitee)
+* 【core   】     优化Combination.countAll(pr#1159@Github)
 
 
 ### Bug修复
 ### Bug修复
 * 【core   】     解决农历判断节日未判断大小月导致的问题(issue#I1XHSF@Gitee)
 * 【core   】     解决农历判断节日未判断大小月导致的问题(issue#I1XHSF@Gitee)
 * 【core   】     解决ListUtil计算总量可能的int溢出问题(pr#1150@Github)
 * 【core   】     解决ListUtil计算总量可能的int溢出问题(pr#1150@Github)
 * 【json   】     解决JSON中转换为double小数精度丢失问题(pr#192@Gitee)
 * 【json   】     解决JSON中转换为double小数精度丢失问题(pr#192@Gitee)
+* 【core   】     修复CaseInsensitiveMap的remove等方法并没有忽略大小写的问题(pr#1163@Gitee)
 
 
 -------------------------------------------------------------------------------------------------------------
 -------------------------------------------------------------------------------------------------------------
 
 

+ 17 - 8
hutool-core/src/main/java/cn/hutool/core/map/CustomKeyMap.java

@@ -4,11 +4,10 @@ import java.util.Map;
 
 
 /**
 /**
  * 自定义键的Map,默认HashMap实现
  * 自定义键的Map,默认HashMap实现
- * 
- * @author Looly
  *
  *
  * @param <K> 键类型
  * @param <K> 键类型
  * @param <V> 值类型
  * @param <V> 值类型
+ * @author Looly
  * @since 4.0.7
  * @since 4.0.7
  */
  */
 public abstract class CustomKeyMap<K, V> extends MapWrapper<K, V> {
 public abstract class CustomKeyMap<K, V> extends MapWrapper<K, V> {
@@ -17,7 +16,7 @@ public abstract class CustomKeyMap<K, V> extends MapWrapper<K, V> {
 	/**
 	/**
 	 * 构造<br>
 	 * 构造<br>
 	 * 通过传入一个Map从而确定Map的类型,子类需创建一个空的Map,而非传入一个已有Map,否则值可能会被修改
 	 * 通过传入一个Map从而确定Map的类型,子类需创建一个空的Map,而非传入一个已有Map,否则值可能会被修改
-	 * 
+	 *
 	 * @param m Map 被包装的Map
 	 * @param m Map 被包装的Map
 	 * @since 3.1.2
 	 * @since 3.1.2
 	 */
 	 */
@@ -47,20 +46,30 @@ public abstract class CustomKeyMap<K, V> extends MapWrapper<K, V> {
 	}
 	}
 
 
 	@Override
 	@Override
-	public V remove(Object key) { return super.remove(customKey(key)); }
+	public V remove(Object key) {
+		return super.remove(customKey(key));
+	}
 
 
 	@Override
 	@Override
-	public boolean remove(Object key, Object value) { return super.remove(customKey(key), value); }
+	public boolean remove(Object key, Object value) {
+		return super.remove(customKey(key), value);
+	}
 
 
 	@Override
 	@Override
-	public boolean replace(K key, V oldValue, V newValue) { return super.replace((K) customKey(key), oldValue, newValue); }
+	public boolean replace(K key, V oldValue, V newValue) {
+		//noinspection unchecked
+		return super.replace((K) customKey(key), oldValue, newValue);
+	}
 
 
 	@Override
 	@Override
-	public V replace(K key, V value) { return super.replace((K) customKey(key), value); }
+	public V replace(K key, V value) {
+		//noinspection unchecked
+		return super.replace((K) customKey(key), value);
+	}
 
 
 	/**
 	/**
 	 * 自定义键
 	 * 自定义键
-	 * 
+	 *
 	 * @param key KEY
 	 * @param key KEY
 	 * @return 自定义KEY
 	 * @return 自定义KEY
 	 */
 	 */