diff --git a/hutool-core/src/main/java/org/dromara/hutool/core/bean/copier/ValueProvider.java b/hutool-core/src/main/java/org/dromara/hutool/core/bean/copier/ValueProvider.java
index 3eeba80b3..6cedd7aab 100644
--- a/hutool-core/src/main/java/org/dromara/hutool/core/bean/copier/ValueProvider.java
+++ b/hutool-core/src/main/java/org/dromara/hutool/core/bean/copier/ValueProvider.java
@@ -24,10 +24,10 @@ import java.lang.reflect.Type;
* 在Bean注入过程中,Bean获得字段名,通过外部方式根据这个字段名查找相应的字段值,然后注入Bean
*
* @author Looly
- * @param KEY类型,一般情况下为 {@link String}
+ * @param KEY类型,一般情况下为 {@link String}
*
*/
-public interface ValueProvider{
+public interface ValueProvider{
/**
* 获取值
@@ -37,7 +37,7 @@ public interface ValueProvider{
* @param valueType 被注入的值的类型
* @return 对应参数名的值
*/
- Object value(T key, Type valueType);
+ Object value(K key, Type valueType);
/**
* 是否包含指定KEY,如果不包含则忽略注入
@@ -46,5 +46,5 @@ public interface ValueProvider{
* @param key Bean对象中参数名
* @return 是否包含指定KEY
*/
- boolean containsKey(T key);
+ boolean containsKey(K key);
}
diff --git a/hutool-core/src/main/java/org/dromara/hutool/core/collection/CollUtil.java b/hutool-core/src/main/java/org/dromara/hutool/core/collection/CollUtil.java
index 0e8ff029e..bff7ccdf1 100644
--- a/hutool-core/src/main/java/org/dromara/hutool/core/collection/CollUtil.java
+++ b/hutool-core/src/main/java/org/dromara/hutool/core/collection/CollUtil.java
@@ -740,11 +740,17 @@ public class CollUtil {
*
* @param 集合元素类型,rawtype 如 ArrayList.class, EnumSet.class ...
* @param collectionType 集合类型
+ * @param elementType 集合元素类,只用于EnumSet创建,如果创建EnumSet,则此参数必须非空
* @return 集合类型对应的实例
* @since 3.0.8
*/
- public static Collection create(final Class> collectionType) {
- return create(collectionType, null);
+ @SuppressWarnings({"unchecked", "rawtypes"})
+ public static Collection create(final Class> collectionType, final Class elementType) {
+ if (collectionType.isAssignableFrom(EnumSet.class)) {
+ return (Collection) EnumSet.noneOf((Class) Assert.notNull(elementType));
+ }
+
+ return create(collectionType);
}
/**
@@ -752,12 +758,11 @@ public class CollUtil {
*
* @param 集合元素类型,rawtype 如 ArrayList.class, EnumSet.class ...
* @param collectionType 集合类型
- * @param elementType 集合元素类,只用于EnumSet创建,如果创建EnumSet,则此参数必须非空
* @return 集合类型对应的实例
* @since 3.0.8
*/
- @SuppressWarnings({"unchecked", "rawtypes"})
- public static Collection create(final Class> collectionType, final Class elementType) {
+ @SuppressWarnings({"unchecked"})
+ public static Collection create(final Class> collectionType) {
final Collection list;
if (collectionType.isAssignableFrom(AbstractCollection.class)) {
// 抽象集合默认使用ArrayList
@@ -777,8 +782,6 @@ public class CollUtil {
}
return CompareUtil.compare(o1.toString(), o2.toString());
});
- } else if (collectionType.isAssignableFrom(EnumSet.class)) {
- list = (Collection) EnumSet.noneOf((Class) Assert.notNull(elementType));
}
// List
diff --git a/hutool-json/src/main/java/org/dromara/hutool/json/JSON.java b/hutool-json/src/main/java/org/dromara/hutool/json/JSON.java
index fde948dc5..9557a13d6 100644
--- a/hutool-json/src/main/java/org/dromara/hutool/json/JSON.java
+++ b/hutool-json/src/main/java/org/dromara/hutool/json/JSON.java
@@ -38,7 +38,7 @@ import java.util.function.Predicate;
*
* @author Looly
*/
-public interface JSON extends Converter, Cloneable, Serializable {
+public interface JSON extends Converter, Serializable {
/**
* 获取JSON配置
diff --git a/hutool-json/src/main/java/org/dromara/hutool/json/JSONArray.java b/hutool-json/src/main/java/org/dromara/hutool/json/JSONArray.java
index d1c4d18b6..c93e9dbec 100644
--- a/hutool-json/src/main/java/org/dromara/hutool/json/JSONArray.java
+++ b/hutool-json/src/main/java/org/dromara/hutool/json/JSONArray.java
@@ -50,7 +50,7 @@ public class JSONArray extends ListWrapper implements JSON, JSONGetter implements JSON, JSONGetter writer.writeField(new MutableEntry<>(index, value)));
writer.endArray();
}
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- final JSONArray clone = (JSONArray) super.clone();
- clone.config = this.config;
- return clone;
- }
}
diff --git a/hutool-json/src/main/java/org/dromara/hutool/json/JSONPrimitive.java b/hutool-json/src/main/java/org/dromara/hutool/json/JSONPrimitive.java
index a81a1b5bf..245a5421b 100644
--- a/hutool-json/src/main/java/org/dromara/hutool/json/JSONPrimitive.java
+++ b/hutool-json/src/main/java/org/dromara/hutool/json/JSONPrimitive.java
@@ -46,15 +46,6 @@ public class JSONPrimitive implements Wrapper