From 4645336efdc9b167f511e15376e281e06430333e Mon Sep 17 00:00:00 2001
From: emptypoint <1215582715@qq.com>
Date: Sun, 22 Jan 2023 18:11:08 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96ObjUtil=E6=96=87=E6=A1=A3=20?=
=?UTF-8?q?=E5=92=8C=20ClassUtil=E7=9A=84=E9=83=A8=E5=88=86=E6=96=87?=
=?UTF-8?q?=E6=A1=A3=EF=BC=9B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../cn/hutool/core/reflect/ClassUtil.java | 52 +++++++------
.../java/cn/hutool/core/util/ObjUtil.java | 76 +++++++++----------
2 files changed, 65 insertions(+), 63 deletions(-)
diff --git a/hutool-core/src/main/java/cn/hutool/core/reflect/ClassUtil.java b/hutool-core/src/main/java/cn/hutool/core/reflect/ClassUtil.java
index bae54c757..5c7de2ac7 100644
--- a/hutool-core/src/main/java/cn/hutool/core/reflect/ClassUtil.java
+++ b/hutool-core/src/main/java/cn/hutool/core/reflect/ClassUtil.java
@@ -314,8 +314,8 @@ public class ClassUtil {
* @since 3.2.1
*/
public static String getClassPath(final boolean isEncoded) {
- final URL classPathURL = ResourceUtil.getResourceUrl(StrUtil.EMPTY);
- final String url = isEncoded ? classPathURL.getPath() : URLUtil.getDecodedPath(classPathURL);
+ final URL classPathUrl = ResourceUtil.getResourceUrl(StrUtil.EMPTY);
+ final String url = isEncoded ? classPathUrl.getPath() : URLUtil.getDecodedPath(classPathUrl);
return FileUtil.normalize(url);
}
@@ -379,11 +379,11 @@ public class ClassUtil {
}
/**
- * 是否简单值类型或简单值类型的数组
- * 包括:原始类型,、String、other CharSequence, a Number, a Date, a URI, a URL, a Locale or a Class及其数组
+ * 是否为 简单值类型 或 简单值类型的数组
*
* @param clazz 属性类
- * @return 是否简单值类型或简单值类型的数组
+ * @return 是否为 简单值类型 或 简单值类型的数组
+ * @see #isSimpleValueType(Class)
*/
public static boolean isSimpleTypeOrArray(final Class> clazz) {
if (null == clazz) {
@@ -397,6 +397,7 @@ public class ClassUtil {
* 包括:
*
* 原始类型 + * 枚举 * String、other CharSequence * Number * Date @@ -404,23 +405,24 @@ public class ClassUtil { * URL * Locale * Class + * jdk8时间相关类型 ** * @param clazz 类 * @return 是否为简单值类型 */ public static boolean isSimpleValueType(final Class> clazz) { - return isBasicType(clazz) // - || clazz.isEnum() // - || CharSequence.class.isAssignableFrom(clazz) // - || Number.class.isAssignableFrom(clazz) // - || Date.class.isAssignableFrom(clazz) // - || clazz.equals(URI.class) // - || clazz.equals(URL.class) // - || clazz.equals(Locale.class) // - || clazz.equals(Class.class)// + return isBasicType(clazz) + || clazz.isEnum() + || CharSequence.class.isAssignableFrom(clazz) + || Number.class.isAssignableFrom(clazz) + || Date.class.isAssignableFrom(clazz) + || clazz.equals(URI.class) + || clazz.equals(URL.class) + || clazz.equals(Locale.class) + || clazz.equals(Class.class) // jdk8 date object - || TemporalAccessor.class.isAssignableFrom(clazz); // + || TemporalAccessor.class.isAssignableFrom(clazz); } /** @@ -472,14 +474,14 @@ public class ClassUtil { * @return 是否为标准类 */ public static boolean isNormalClass(final Class> clazz) { - return null != clazz // - && false == clazz.isInterface() // - && false == ModifierUtil.isAbstract(clazz) // - && false == clazz.isEnum() // - && false == clazz.isArray() // - && false == clazz.isAnnotation() // - && false == clazz.isSynthetic() // - && false == clazz.isPrimitive();// + return null != clazz + && false == clazz.isInterface() + && false == ModifierUtil.isAbstract(clazz) + && false == clazz.isEnum() + && false == clazz.isArray() + && false == clazz.isAnnotation() + && false == clazz.isSynthetic() + && false == clazz.isPrimitive(); } /** @@ -635,8 +637,8 @@ public class ClassUtil { return false; } final String objectPackageName = objectPackage.getName(); - return objectPackageName.startsWith("java.") // - || objectPackageName.startsWith("javax.") // + return objectPackageName.startsWith("java.") + || objectPackageName.startsWith("javax.") || clazz.getClassLoader() == null; } diff --git a/hutool-core/src/main/java/cn/hutool/core/util/ObjUtil.java b/hutool-core/src/main/java/cn/hutool/core/util/ObjUtil.java index b2f0ee03a..9cf4ed471 100644 --- a/hutool-core/src/main/java/cn/hutool/core/util/ObjUtil.java +++ b/hutool-core/src/main/java/cn/hutool/core/util/ObjUtil.java @@ -88,10 +88,9 @@ public class ObjUtil { return ((Map, ?>) obj).size(); } - int count; + int count = 0; if (obj instanceof Iterator || obj instanceof Iterable) { final Iterator> iter = (obj instanceof Iterator) ? (Iterator>) obj : ((Iterable>) obj).iterator(); - count = 0; while (iter.hasNext()) { count++; iter.next(); @@ -103,7 +102,6 @@ public class ObjUtil { } if (obj instanceof Enumeration) { final Enumeration> enumeration = (Enumeration>) obj; - count = 0; while (enumeration.hasMoreElements()) { count++; enumeration.nextElement(); @@ -194,7 +192,7 @@ public class ObjUtil { * 检查对象是否不为{@code null} * * @param obj 对象 - * @return 是否为null + * @return 是否不为null */ public static boolean isNotNull(final Object obj) { return null != obj; @@ -249,7 +247,7 @@ public class ObjUtil { * 判断指定对象是否为非空 * * @param obj 被判断的对象 - * @return 是否为空,如果类型不支持,返回true + * @return 是否不为空,如果类型不支持,返回true * @since 4.5.7 * @see #isEmpty(Object) */ @@ -270,7 +268,7 @@ public class ObjUtil { * @param
克隆对象 *
将对象转为字符串 *