This commit is contained in:
redkale
2024-10-17 09:05:09 +08:00
parent f1ae2bd165
commit 7586577521
2 changed files with 4 additions and 26 deletions

View File

@@ -28,8 +28,7 @@ public class JsonBytesWriter extends JsonWriter implements ByteTuple {
private static final byte[] BYTES_NULL = new byte[] {'n', 'u', 'l', 'l'};
// 所有byte、short值的序列化进行缓存
private static final int TENTHOUSAND_MAX = Short.MAX_VALUE + 2;
private static final int TENTHOUSAND_MAX = 10001;
private static final byte[][] TENTHOUSAND_BYTES = new byte[TENTHOUSAND_MAX][];
private static final byte[][] TENTHOUSAND_BYTES2 = new byte[TENTHOUSAND_MAX][];
@@ -217,17 +216,7 @@ public class JsonBytesWriter extends JsonWriter implements ByteTuple {
@Override
public boolean writeFieldShortValue(Object fieldArray, boolean comma, short value) {
byte[] bs1 = (byte[]) fieldArray;
byte[] bs2 = value >= 0 ? TENTHOUSAND_BYTES[value] : TENTHOUSAND_BYTES2[-value];
int len1 = bs1.length;
int len2 = bs2.length;
byte[] src = expand(1 + len1 + len2);
if (comma) src[count++] = BYTE_COMMA;
System.arraycopy(bs1, 0, src, count, len1);
count += len1;
System.arraycopy(bs2, 0, src, count, len2);
count += len2;
return true;
return writeFieldIntValue(fieldArray, comma, value);
}
@Override

View File

@@ -27,8 +27,7 @@ public class JsonCharsWriter extends JsonWriter {
private static final char[] CHARS_FALSEVALUE = "false".toCharArray();
// 所有byte、short值的序列化进行缓存
private static final int TENTHOUSAND_MAX = Short.MAX_VALUE + 2;
private static final int TENTHOUSAND_MAX = 10001;
private static final char[][] TENTHOUSAND_CHARS = new char[TENTHOUSAND_MAX][];
private static final char[][] TENTHOUSAND_CHARS2 = new char[TENTHOUSAND_MAX][];
@@ -157,17 +156,7 @@ public class JsonCharsWriter extends JsonWriter {
@Override
public boolean writeFieldShortValue(Object fieldArray, boolean comma, short value) {
char[] bs1 = (char[]) fieldArray;
char[] bs2 = value >= 0 ? TENTHOUSAND_CHARS[value] : TENTHOUSAND_CHARS2[-value];
int len1 = bs1.length;
int len2 = bs2.length;
char[] src = expand(1 + len1 + len2);
if (comma) src[count++] = BYTE_COMMA;
System.arraycopy(bs1, 0, src, count, len1);
count += len1;
System.arraycopy(bs2, 0, src, count, len2);
count += len2;
return true;
return writeFieldIntValue(fieldArray, comma, value);
}
@Override