From 2494ecb47bedb9c82c2a4c906005eb1cff8d5c22 Mon Sep 17 00:00:00 2001 From: KNU-K Date: Sun, 17 Nov 2024 20:40:11 +0900 Subject: [PATCH] Simplify utility implementations in spring-core Closes gh-33903 --- .../util/FastByteArrayOutputStream.java | 32 ++++++++----------- .../springframework/util/MethodInvoker.java | 14 ++++---- .../org/springframework/util/MimeType.java | 4 +-- .../org/springframework/util/NumberUtils.java | 6 ++-- .../org/springframework/util/ObjectUtils.java | 18 ++++------- 5 files changed, 29 insertions(+), 45 deletions(-) diff --git a/spring-core/src/main/java/org/springframework/util/FastByteArrayOutputStream.java b/spring-core/src/main/java/org/springframework/util/FastByteArrayOutputStream.java index 7e7f1430c7f..713dff9fb42 100644 --- a/spring-core/src/main/java/org/springframework/util/FastByteArrayOutputStream.java +++ b/spring-core/src/main/java/org/springframework/util/FastByteArrayOutputStream.java @@ -98,13 +98,11 @@ public class FastByteArrayOutputStream extends OutputStream { if (this.closed) { throw new IOException("Stream closed"); } - else { - if (this.buffers.peekLast() == null || this.buffers.getLast().length == this.index) { - addBuffer(1); - } - // store the byte - this.buffers.getLast()[this.index++] = (byte) datum; + if (this.buffers.peekLast() == null || this.buffers.getLast().length == this.index) { + addBuffer(1); } + // store the byte + this.buffers.getLast()[this.index++] = (byte) datum; } @Override @@ -384,22 +382,20 @@ public class FastByteArrayOutputStream extends OutputStream { // This stream doesn't have any data in it... return -1; } + if (this.nextIndexInCurrentBuffer < this.currentBufferLength) { + this.totalBytesRead++; + return this.currentBuffer[this.nextIndexInCurrentBuffer++] & 0xFF; + } else { - if (this.nextIndexInCurrentBuffer < this.currentBufferLength) { - this.totalBytesRead++; - return this.currentBuffer[this.nextIndexInCurrentBuffer++] & 0xFF; + if (this.buffersIterator.hasNext()) { + this.currentBuffer = this.buffersIterator.next(); + updateCurrentBufferLength(); + this.nextIndexInCurrentBuffer = 0; } else { - if (this.buffersIterator.hasNext()) { - this.currentBuffer = this.buffersIterator.next(); - updateCurrentBufferLength(); - this.nextIndexInCurrentBuffer = 0; - } - else { - this.currentBuffer = null; - } - return read(); + this.currentBuffer = null; } + return read(); } } diff --git a/spring-core/src/main/java/org/springframework/util/MethodInvoker.java b/spring-core/src/main/java/org/springframework/util/MethodInvoker.java index 0725b5f7466..e2f4a9cfa97 100644 --- a/spring-core/src/main/java/org/springframework/util/MethodInvoker.java +++ b/spring-core/src/main/java/org/springframework/util/MethodInvoker.java @@ -226,14 +226,12 @@ public class MethodInvoker { Method matchingMethod = null; for (Method candidate : candidates) { - if (candidate.getName().equals(targetMethod)) { - if (candidate.getParameterCount() == argCount) { - Class[] paramTypes = candidate.getParameterTypes(); - int typeDiffWeight = getTypeDifferenceWeight(paramTypes, arguments); - if (typeDiffWeight < minTypeDiffWeight) { - minTypeDiffWeight = typeDiffWeight; - matchingMethod = candidate; - } + if (candidate.getName().equals(targetMethod) && candidate.getParameterCount() == argCount) { + Class[] paramTypes = candidate.getParameterTypes(); + int typeDiffWeight = getTypeDifferenceWeight(paramTypes, arguments); + if (typeDiffWeight < minTypeDiffWeight) { + minTypeDiffWeight = typeDiffWeight; + matchingMethod = candidate; } } } diff --git a/spring-core/src/main/java/org/springframework/util/MimeType.java b/spring-core/src/main/java/org/springframework/util/MimeType.java index 1217c3bbc3d..d4b670718c7 100644 --- a/spring-core/src/main/java/org/springframework/util/MimeType.java +++ b/spring-core/src/main/java/org/springframework/util/MimeType.java @@ -243,9 +243,7 @@ public class MimeType implements Comparable, Serializable { if (s.length() < 2) { return false; } - else { - return ((s.startsWith("\"") && s.endsWith("\"")) || (s.startsWith("'") && s.endsWith("'"))); - } + return ((s.startsWith("\"") && s.endsWith("\"")) || (s.startsWith("'") && s.endsWith("'"))); } protected String unquote(String s) { diff --git a/spring-core/src/main/java/org/springframework/util/NumberUtils.java b/spring-core/src/main/java/org/springframework/util/NumberUtils.java index 505088913a7..9b37793de62 100644 --- a/spring-core/src/main/java/org/springframework/util/NumberUtils.java +++ b/spring-core/src/main/java/org/springframework/util/NumberUtils.java @@ -110,10 +110,8 @@ public abstract class NumberUtils { // do not lose precision - use BigDecimal's own conversion return (T) bigDecimal.toBigInteger(); } - else { - // original value is not a Big* number - use standard long conversion - return (T) BigInteger.valueOf(number.longValue()); - } + // original value is not a Big* number - use standard long conversion + return (T) BigInteger.valueOf(number.longValue()); } else if (Float.class == targetClass) { return (T) Float.valueOf(number.floatValue()); diff --git a/spring-core/src/main/java/org/springframework/util/ObjectUtils.java b/spring-core/src/main/java/org/springframework/util/ObjectUtils.java index a4b5822351a..6e4c35924a9 100644 --- a/spring-core/src/main/java/org/springframework/util/ObjectUtils.java +++ b/spring-core/src/main/java/org/springframework/util/ObjectUtils.java @@ -702,8 +702,7 @@ public abstract class ObjectUtils { if (array == null) { return NULL_STRING; } - int length = array.length; - if (length == 0) { + if (array.length == 0) { return EMPTY_ARRAY; } StringJoiner stringJoiner = new StringJoiner(ARRAY_ELEMENT_SEPARATOR, ARRAY_START, ARRAY_END); @@ -726,8 +725,7 @@ public abstract class ObjectUtils { if (array == null) { return NULL_STRING; } - int length = array.length; - if (length == 0) { + if (array.length == 0) { return EMPTY_ARRAY; } StringJoiner stringJoiner = new StringJoiner(ARRAY_ELEMENT_SEPARATOR, ARRAY_START, ARRAY_END); @@ -750,8 +748,7 @@ public abstract class ObjectUtils { if (array == null) { return NULL_STRING; } - int length = array.length; - if (length == 0) { + if (array.length == 0) { return EMPTY_ARRAY; } StringJoiner stringJoiner = new StringJoiner(ARRAY_ELEMENT_SEPARATOR, ARRAY_START, ARRAY_END); @@ -774,8 +771,7 @@ public abstract class ObjectUtils { if (array == null) { return NULL_STRING; } - int length = array.length; - if (length == 0) { + if (array.length == 0) { return EMPTY_ARRAY; } StringJoiner stringJoiner = new StringJoiner(ARRAY_ELEMENT_SEPARATOR, ARRAY_START, ARRAY_END); @@ -798,8 +794,7 @@ public abstract class ObjectUtils { if (array == null) { return NULL_STRING; } - int length = array.length; - if (length == 0) { + if (array.length == 0) { return EMPTY_ARRAY; } StringJoiner stringJoiner = new StringJoiner(ARRAY_ELEMENT_SEPARATOR, ARRAY_START, ARRAY_END); @@ -846,8 +841,7 @@ public abstract class ObjectUtils { if (array == null) { return NULL_STRING; } - int length = array.length; - if (length == 0) { + if (array.length == 0) { return EMPTY_ARRAY; } StringJoiner stringJoiner = new StringJoiner(ARRAY_ELEMENT_SEPARATOR, ARRAY_START, ARRAY_END);