Skip to content

Commit a4447dd

Browse files
committed
Refactor sort transformer to use array sort
1 parent 220b974 commit a4447dd

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

src/main/java/at/favre/lib/bytes/BytesTransformers.java

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,10 @@
44
import java.io.ByteArrayOutputStream;
55
import java.io.IOException;
66
import java.security.SecureRandom;
7-
import java.util.*;
7+
import java.util.Arrays;
8+
import java.util.Comparator;
9+
import java.util.Objects;
10+
import java.util.Random;
811
import java.util.zip.CRC32;
912
import java.util.zip.Checksum;
1013
import java.util.zip.GZIPInputStream;
@@ -138,7 +141,7 @@ public boolean supportInPlaceTransformation() {
138141
* Sorts the internal byte array with given {@link java.util.Comparator}
139142
*/
140143
public static final class SortTransformer implements BytesTransformer {
141-
private final Comparator<Byte> comparator;
144+
private final Comparator comparator;
142145

143146
SortTransformer() {
144147
this(null);
@@ -156,9 +159,9 @@ public byte[] transform(byte[] currentArray, boolean inPlace) {
156159
return out;
157160
} else {
158161
//no in-place implementation with comparator
159-
List<Byte> list = Bytes.wrap(currentArray).toList();
160-
Collections.sort(list, comparator);
161-
return Bytes.from(list).array();
162+
Byte[] boxedArray = Bytes.wrap(currentArray).toBoxedArray();
163+
Arrays.sort(boxedArray, comparator);
164+
return Bytes.from(boxedArray).array();
162165
}
163166
}
164167

0 commit comments

Comments
 (0)