Browse Source

完善代码

刘伟龙 5 years ago
parent
commit
6ea24f4d64

+ 2 - 9
hutool-core/src/main/java/cn/hutool/core/lang/PatternPool.java

@@ -69,17 +69,10 @@ public class PatternPool {
 
 
 
 
 	/**  社会统一信用代码 */
 	/**  社会统一信用代码 */
-	public static final String REGEX = "^[A-Z0-9]{18}$";
+	public static final String CREDIT_CODE = "^[A-Z0-9]{18}$";
 
 
-	public static final String BASE_CODE_STRING = "0123456789ABCDEFGHJKLMNPQRTUWXY";
+	public static final String BASE_CODE_REGEX = "[0-9A-Y]{18}";
 
 
-	public static final String BASE_CODE_REGEX = "[" + BASE_CODE_STRING + "]{18}";
-
-	public static final List<Character> BASE_CODES = new ArrayList<>();
-
-	public static final int[] WEIGHT = {1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28};
-
-	public static final char[] BASE_CODE_ARRAY = BASE_CODE_STRING.toCharArray();
 
 
 	// -------------------------------------------------------------------------------------------------------------------------------------------------------------------
 	// -------------------------------------------------------------------------------------------------------------------------------------------------------------------
 	/** Pattern池 */
 	/** Pattern池 */

+ 16 - 3
hutool-core/src/main/java/cn/hutool/core/lang/Validator.java

@@ -8,6 +8,8 @@ import cn.hutool.core.util.ReUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.core.util.StrUtil;
 
 
 import java.net.MalformedURLException;
 import java.net.MalformedURLException;
+import java.util.ArrayList;
+import java.util.List;
 import java.util.regex.Matcher;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.regex.Pattern;
 
 
@@ -88,6 +90,17 @@ public class Validator {
 	public final static Pattern PLATE_NUMBER = PatternPool.PLATE_NUMBER;
 	public final static Pattern PLATE_NUMBER = PatternPool.PLATE_NUMBER;
 
 
 	/**
 	/**
+	 * 社会统一信用代码
+	 */
+	public static final List<Character> BASE_CODES = new ArrayList<>();
+
+	public static final String BASE_CODE_STRING = "0123456789ABCDEFGHJKLMNPQRTUWXY";
+
+	public static final int[] WEIGHT = {1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28};
+
+	public static final char[] BASE_CODE_ARRAY = BASE_CODE_STRING.toCharArray();
+
+	/**
 	 * 给定值是否为<code>true</code>
 	 * 给定值是否为<code>true</code>
 	 *
 	 *
 	 * @param value 值
 	 * @param value 值
@@ -1115,7 +1128,7 @@ public class Validator {
 		if (StrUtil.isBlank(creditCode)) {
 		if (StrUtil.isBlank(creditCode)) {
 			return false;
 			return false;
 		}
 		}
-		return Pattern.matches(PatternPool.REGEX, creditCode);
+		return Pattern.matches(PatternPool.CREDIT_CODE, creditCode);
 	}
 	}
 
 
 	/**
 	/**
@@ -1133,9 +1146,9 @@ public class Validator {
 		int sum = 0, length = 17;
 		int sum = 0, length = 17;
 		for (int i = 0; i < length; i++) {
 		for (int i = 0; i < length; i++) {
 			char key = businessCodeArray[i];
 			char key = businessCodeArray[i];
-			sum += (PatternPool.BASE_CODES.indexOf(key) * PatternPool.WEIGHT[i]);
+			sum += (BASE_CODES.indexOf(key) * WEIGHT[i]);
 		}
 		}
 		int value = 31 - sum % 31;
 		int value = 31 - sum % 31;
-		return check == PatternPool.BASE_CODE_ARRAY[value % 31];
+		return check == BASE_CODE_ARRAY[value % 31];
 	}
 	}
 }
 }