diff --git a/protocol/src/main/java/com/zfoo/protocol/buffer/ByteBufUtils.java b/protocol/src/main/java/com/zfoo/protocol/buffer/ByteBufUtils.java index 12dc3408..bbf882b3 100644 --- a/protocol/src/main/java/com/zfoo/protocol/buffer/ByteBufUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/buffer/ByteBufUtils.java @@ -430,7 +430,7 @@ public abstract class ByteBufUtils { public static Set readPacketSet(ByteBuf byteBuf, IProtocolRegistration protocolRegistration) { var length = readInt(byteBuf); - var set = (Set) CollectionUtils.newFixedSet(length); + var set = (Set) CollectionUtils.newSet(length); for (var i = 0; i < length; i++) { set.add((IPacket) protocolRegistration.read(byteBuf)); } @@ -619,7 +619,7 @@ public abstract class ByteBufUtils { public static Map readStringIntMap(ByteBuf byteBuf) { var length = readInt(byteBuf); - var map = (Map) CollectionUtils.newFixedMap(length); + var map = (Map) CollectionUtils.newMap(length); for (var i = 0; i < length; i++) { map.put(readString(byteBuf), readIntBox(byteBuf)); } @@ -640,7 +640,7 @@ public abstract class ByteBufUtils { public static Map readStringLongMap(ByteBuf byteBuf) { var length = readInt(byteBuf); - var map = (Map) CollectionUtils.newFixedMap(length); + var map = (Map) CollectionUtils.newMap(length); for (var i = 0; i < length; i++) { map.put(readString(byteBuf), readLongBox(byteBuf)); } @@ -661,7 +661,7 @@ public abstract class ByteBufUtils { public static Map readStringStringMap(ByteBuf byteBuf) { var length = readInt(byteBuf); - var map = (Map) CollectionUtils.newFixedMap(length); + var map = (Map) CollectionUtils.newMap(length); for (var i = 0; i < length; i++) { map.put(readString(byteBuf), readString(byteBuf)); } @@ -682,7 +682,7 @@ public abstract class ByteBufUtils { public static Map readStringPacketMap(ByteBuf byteBuf, IProtocolRegistration protocolRegistration) { var length = readInt(byteBuf); - var map = (Map) CollectionUtils.newFixedMap(length); + var map = (Map) CollectionUtils.newMap(length); for (var i = 0; i < length; i++) { map.put(readString(byteBuf), (IPacket) protocolRegistration.read(byteBuf)); } @@ -760,7 +760,7 @@ public abstract class ByteBufUtils { public static Set readBooleanSet(ByteBuf byteBuf) { var length = readInt(byteBuf); - var set = (Set) CollectionUtils.newFixedSet(length); + var set = (Set) CollectionUtils.newSet(length); for (var i = 0; i < length; i++) { set.add(readBooleanBox(byteBuf)); } @@ -1143,7 +1143,7 @@ public abstract class ByteBufUtils { public static Set readFloatSet(ByteBuf byteBuf) { var length = readInt(byteBuf); - var set = (Set) CollectionUtils.newFixedSet(length); + var set = (Set) CollectionUtils.newSet(length); for (var i = 0; i < length; i++) { set.add(readFloatBox(byteBuf)); } @@ -1224,7 +1224,7 @@ public abstract class ByteBufUtils { public static Set readDoubleSet(ByteBuf byteBuf) { var length = readInt(byteBuf); - var set = (Set) CollectionUtils.newFixedSet(length); + var set = (Set) CollectionUtils.newSet(length); for (var i = 0; i < length; i++) { set.add(readDoubleBox(byteBuf)); } @@ -1282,7 +1282,7 @@ public abstract class ByteBufUtils { public static Set readStringSet(ByteBuf byteBuf) { var length = readInt(byteBuf); - var set = (Set) CollectionUtils.newFixedSet(length); + var set = (Set) CollectionUtils.newSet(length); for (var i = 0; i < length; i++) { set.add(readString(byteBuf)); } diff --git a/protocol/src/main/java/com/zfoo/protocol/collection/CollectionUtils.java b/protocol/src/main/java/com/zfoo/protocol/collection/CollectionUtils.java index 6ece1398..52633eba 100644 --- a/protocol/src/main/java/com/zfoo/protocol/collection/CollectionUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/collection/CollectionUtils.java @@ -75,18 +75,15 @@ public abstract class CollectionUtils { } - /** - * 固定大小集合,如果初始化容量为0,则后续无法继续增加集合容量 - */ - public static List newFixedList(int size) { - return size <= 0 ? Collections.EMPTY_LIST : new ArrayList<>(size); + public static List newList(int size) { + return size <= 0 ? Collections.EMPTY_LIST : new ArrayList<>(comfortableLength(size)); } - public static Set newFixedSet(int size) { + public static Set newSet(int size) { return size <= 0 ? Collections.EMPTY_SET : new HashSet<>(comfortableCapacity(size)); } - public static Map newFixedMap(int size) { + public static Map newMap(int size) { return size <= 0 ? Collections.EMPTY_MAP : new HashMap<>(comfortableCapacity(size)); } diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceListSerializer.java b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceListSerializer.java index 2880dfc1..429bf3ed 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceListSerializer.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceListSerializer.java @@ -67,7 +67,7 @@ public class EnhanceListSerializer implements IEnhanceSerializer { var size = "size" + GenerateProtocolFile.index.getAndIncrement(); builder.append(StringUtils.format("int {}={}.readInt($1);", size, EnhanceUtils.byteBufUtils)); - builder.append(StringUtils.format("List {} = CollectionUtils.newFixedList({});", list, size)); + builder.append(StringUtils.format("List {} = CollectionUtils.newList({});", list, size)); var i = "i" + GenerateProtocolFile.index.getAndIncrement(); diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceMapSerializer.java b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceMapSerializer.java index 618e3d26..a6c33238 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceMapSerializer.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceMapSerializer.java @@ -80,7 +80,7 @@ public class EnhanceMapSerializer implements IEnhanceSerializer { var size = "size" + GenerateProtocolFile.index.getAndIncrement(); builder.append(StringUtils.format("int {}={}.readInt($1);", size, EnhanceUtils.byteBufUtils)); - builder.append(StringUtils.format("Map {} = CollectionUtils.newFixedMap({});", map, size)); + builder.append(StringUtils.format("Map {} = CollectionUtils.newMap({});", map, size)); var i = "i" + GenerateProtocolFile.index.getAndIncrement(); builder.append(StringUtils.format("for(int {}=0; {}<{}; {}++){", i, i, size, i)); diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceSetSerializer.java b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceSetSerializer.java index 04360286..5733f31b 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceSetSerializer.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceSetSerializer.java @@ -65,7 +65,7 @@ public class EnhanceSetSerializer implements IEnhanceSerializer { var size = "size" + GenerateProtocolFile.index.getAndIncrement(); builder.append(StringUtils.format("int {} = {}.readInt($1);", size, EnhanceUtils.byteBufUtils)); - builder.append(StringUtils.format("Set {} = CollectionUtils.newFixedSet({});", set, size)); + builder.append(StringUtils.format("Set {} = CollectionUtils.newSet({});", set, size)); var i = "i" + GenerateProtocolFile.index.getAndIncrement(); builder.append(StringUtils.format("for(int {}=0; {}<{}; {}++){", i, i, size, i));