diff --git a/src/main/java/org/redkale/util/Utility.java b/src/main/java/org/redkale/util/Utility.java index 67743853c..a560381f9 100644 --- a/src/main/java/org/redkale/util/Utility.java +++ b/src/main/java/org/redkale/util/Utility.java @@ -934,6 +934,28 @@ public final class Utility { return rs; } + public static char[] box(Character[] array) { + if (array == null) { + return null; + } + char[] rs = new char[array.length]; + for (int i = 0; i < rs.length; i++) { + rs[i] = array[i] == null ? 0 : array[i]; + } + return rs; + } + + public static Character[] box(char[] array) { + if (array == null) { + return null; + } + Character[] rs = new Character[array.length]; + for (int i = 0; i < rs.length; i++) { + rs[i] = array[i]; + } + return rs; + } + public static short[] box(Short[] array) { if (array == null) { return null; @@ -1044,6 +1066,23 @@ public final class Utility { return rs; } + public static boolean[] reverse(boolean[] array) { + if (array == null) { + return array; + } + boolean[] arr = array; + int start = 0; + int end = arr.length - 1; + while (start < end) { + boolean temp = arr[start]; + arr[start] = arr[end]; + arr[end] = temp; + start++; + end--; + } + return arr; + } + public static byte[] reverse(byte[] array) { if (array == null) { return array; @@ -1061,6 +1100,23 @@ public final class Utility { return arr; } + public static char[] reverse(char[] array) { + if (array == null) { + return array; + } + char[] arr = array; + int start = 0; + int end = arr.length - 1; + while (start < end) { + char temp = arr[start]; + arr[start] = arr[end]; + arr[end] = temp; + start++; + end--; + } + return arr; + } + public static short[] reverse(short[] array) { if (array == null) { return array; @@ -1163,6 +1219,13 @@ public final class Utility { return arr; } + public static List reverse(List list) { + if (list != null) { + Collections.reverse(list); + } + return list; + } + /** * 将多个key:value的字符串键值对组合成一个Map,items长度必须是偶数, 参数个数若是奇数的话,最后一个会被忽略 * 类似 JDK9中的 Map.of 方法 @@ -1975,34 +2038,6 @@ public final class Utility { return news; } - /** - * 将int数组倒序 - * - * @param array 原数组 - * - * @return 新数组 - */ - public static int[] reverseSort(final int[] array) { - if (array == null || array.length == 0) { - return array; - } - return Arrays.stream(array).boxed().sorted(Collections.reverseOrder()).mapToInt(x -> x).toArray(); - } - - /** - * 将long数组倒序 - * - * @param array 原数组 - * - * @return 新数组 - */ - public static long[] reverseSort(final long[] array) { - if (array == null || array.length == 0) { - return array; - } - return Arrays.stream(array).boxed().sorted(Collections.reverseOrder()).mapToLong(x -> x).toArray(); - } - /** * 将元素从数组中删除 *