Skip to content

Commit 9c96fdf

Browse files
committed
Reuse the JRE's Arrays.fill()
1 parent 45f0202 commit 9c96fdf

File tree

1 file changed

+7
-12
lines changed

1 file changed

+7
-12
lines changed

src/main/java/org/apache/commons/lang3/text/StrBuilder.java

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import java.io.Serializable;
2222
import java.io.Writer;
2323
import java.nio.CharBuffer;
24+
import java.util.Arrays;
2425
import java.util.Iterator;
2526
import java.util.List;
2627
import java.util.Objects;
@@ -866,10 +867,9 @@ public StrBuilder appendFixedWidthPadLeft(final Object obj, final int width, fin
866867
str.getChars(strLen - width, strLen, buffer, size);
867868
} else {
868869
final int padLen = width - strLen;
869-
for (int i = 0; i < padLen; i++) {
870-
buffer[size + i] = padChar;
871-
}
872-
str.getChars(0, strLen, buffer, size + padLen);
870+
final int toIndex = size + padLen;
871+
Arrays.fill(buffer, size, toIndex, padChar);
872+
str.getChars(0, strLen, buffer, toIndex);
873873
}
874874
size += width;
875875
}
@@ -912,11 +912,9 @@ public StrBuilder appendFixedWidthPadRight(final Object obj, final int width, fi
912912
if (strLen >= width) {
913913
str.getChars(0, width, buffer, size);
914914
} else {
915-
final int padLen = width - strLen;
916915
str.getChars(0, strLen, buffer, size);
917-
for (int i = 0; i < padLen; i++) {
918-
buffer[size + strLen + i] = padChar;
919-
}
916+
final int fromIndex = size + strLen;
917+
Arrays.fill(buffer, fromIndex, fromIndex + width - strLen, padChar);
920918
}
921919
size += width;
922920
}
@@ -2807,11 +2805,8 @@ public StrBuilder setLength(final int length) {
28072805
size = length;
28082806
} else if (length > size) {
28092807
ensureCapacity(length);
2810-
final int oldEnd = size;
2808+
Arrays.fill(buffer, size, length, CharUtils.NUL);
28112809
size = length;
2812-
for (int i = oldEnd; i < length; i++) {
2813-
buffer[i] = CharUtils.NUL;
2814-
}
28152810
}
28162811
return this;
28172812
}

0 commit comments

Comments
 (0)