From 1d079b0a7a1d7ca0e91d1c893f06680ae4998948 Mon Sep 17 00:00:00 2001 From: godotg Date: Sat, 26 Aug 2023 12:24:25 +0800 Subject: [PATCH] perf[code]: use NumberUtils instead --- .../com/zfoo/net/packet/PacketService.java | 10 +++++----- .../protocol/serializer/CodeLanguage.java | 19 ++++++++++--------- .../com/zfoo/protocol/util/StringUtils.java | 13 ------------- 3 files changed, 15 insertions(+), 27 deletions(-) diff --git a/net/src/main/java/com/zfoo/net/packet/PacketService.java b/net/src/main/java/com/zfoo/net/packet/PacketService.java index ebceb662..c5243e25 100644 --- a/net/src/main/java/com/zfoo/net/packet/PacketService.java +++ b/net/src/main/java/com/zfoo/net/packet/PacketService.java @@ -27,8 +27,8 @@ import com.zfoo.protocol.serializer.CodeLanguage; import com.zfoo.protocol.util.DomUtils; import com.zfoo.protocol.util.StringUtils; import com.zfoo.protocol.xml.XmlProtocols; +import com.zfoo.util.math.NumberUtils; import io.netty.buffer.ByteBuf; - import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.context.ConfigurableApplicationContext; @@ -71,7 +71,9 @@ public class PacketService implements IPacketService { public static final String NET_COMMON_MODULE = "common"; - /** 内网协议最大id */ + /** + * 内网协议最大id + */ public static final short MAN_NATIVE_PROTOCOL_ID = 100; private final Predicate netGenerateProtocolFilter = registration @@ -127,12 +129,10 @@ public class PacketService implements IPacketService { /** * 获取要生成协议列表 - * @param codeLanguage - * @return */ private Set getProtocolList(String codeLanguage) { var languageSet = new HashSet(); - boolean isNumeric = StringUtils.isNumeric(codeLanguage); + var isNumeric = NumberUtils.isNumeric(codeLanguage); for (var language : CodeLanguage.values()) { if (isNumeric) { var code = Integer.valueOf(codeLanguage); diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/CodeLanguage.java b/protocol/src/main/java/com/zfoo/protocol/serializer/CodeLanguage.java index cf426c1b..4d32c3c0 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/CodeLanguage.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/CodeLanguage.java @@ -23,22 +23,23 @@ public enum CodeLanguage { */ Enhance(1), - Cpp(2), + Cpp(1 << 1), - Go(4), + Go(1 << 2), - JavaScript(8), + JavaScript(1 << 3), - TypeScript(16), + TypeScript(1 << 4), - Lua(32), + Lua(1 << 5), - CSharp(64), + CSharp(1 << 6), - GdScript(128), + GdScript(1 << 7), - Protobuf(256) - ; + Python(1 << 8), + + Protobuf(1 << 12); public final int id; diff --git a/protocol/src/main/java/com/zfoo/protocol/util/StringUtils.java b/protocol/src/main/java/com/zfoo/protocol/util/StringUtils.java index a9517d9d..bc90836b 100644 --- a/protocol/src/main/java/com/zfoo/protocol/util/StringUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/util/StringUtils.java @@ -16,7 +16,6 @@ import com.zfoo.protocol.collection.ArrayUtils; import java.nio.charset.Charset; import java.util.*; -import java.util.regex.Matcher; import java.util.regex.Pattern; /** @@ -80,7 +79,6 @@ public abstract class StringUtils { public static final String EMPTY_JSON = "{}"; - public static final String SEMICOLON_COMMA = ";|,"; //分号或者逗号 public static final String MULTIPLE_HYPHENS = "-----------------------------------------------------------------------"; @@ -485,15 +483,4 @@ public abstract class StringUtils { return Character.isWhitespace(ch) || STOP_WORD.contains(ch); } - /** - * 判断是否是正数 - * @param str - * @return - */ - public static boolean isNumeric(String str) { - Pattern pattern = Pattern.compile("[0-9]*"); - Matcher isNum = pattern.matcher(str); - return isNum.matches(); - } - }