欢迎访问宙启技术站
智能推送

Java中如何使用数组函数,如sort,copy和toString?

发布时间:2023-05-22 16:29:17

在Java中,数组是一组相同类型的数据元素的集合,使用方便并且常用。数组函数可以是一些内置的方法帮助我们处理数组的操作。本篇文章将重点介绍Java中数组的sort、copy和toString函数的用法。

sort函数

Java中,sort()函数可以对数组进行排序,常见的使用方式是对数值类型的数组从小到大排序。sort()函数有多种重载函数,如下:

- public static void sort(int[] a)

- public static void sort(int[] a, int fromIndex, int toIndex)

- public static <T> void sort(T[] a, Comparator<? super T> c)

- public static <T> void sort(T[] a, int fromIndex, int toIndex, Comparator<? super T> c)

其中,前两个方法是针对数组类型为int的情况,后两个方法则是通用的,可以用于任何类型的数组。 种用法使用较为广泛,我们来看一个例子:

int[] array = {4, 2, 8, 1, 5, 7};
Arrays.sort(array);
System.out.println(Arrays.toString(array));

输出结果为:[1, 2, 4, 5, 7, 8]

第二种用法是指定排序的起始位置和结束位置。代码示例:

int[] array = {4, 2, 8, 1, 5, 7};
Arrays.sort(array, 2, 5);
System.out.println(Arrays.toString(array));

输出结果为:[4, 2, 5, 1, 8, 7]

第三种用法实现的是自定义排序功能,需要传入一个自定义的比较器作为参数。代码示例:

String[] array = {"apple", "orange", "banana", "pear"};
Arrays.sort(array, (s1, s2)->s1.length()-s2.length());
System.out.println(Arrays.toString(array));

输出结果为:[pear, apple, banana, orange]

第四种用法与第三种用法类似,是指定排序的起始位置和结束位置。代码示例:

String[] array = {"apple", "orange", "banana", "pear"};
Arrays.sort(array, 1, 3, (s1, s2)->s1.length()-s2.length());
System.out.println(Arrays.toString(array));

输出结果为:[apple, banana, orange, pear]

copy函数

Java中,copy()函数可以用于数组的复制。copy()函数有多种重载函数,如下:

- public static void copyOf(boolean[] original, int newLength)

- public static void copyOf(byte[] original, int newLength)

- public static void copyOf(char[] original, int newLength)

- public static void copyOf(int[] original, int newLength)

- public static void copyOf(long[] original, int newLength)

- public static void copyOf(float[] original, int newLength)

- public static void copyOf(double[] original, int newLength)

- public static <T> T[] copyOf(T[] original, int newLength)

其中,前七个方法是针对数组类型为boolean、byte、char、int、long、float、double的情况,最后一个方法是通用的,可以用于任何类型的数组。这里只给出通用的用法,其他类型的用法类似。代码示例:

String[] array = {"apple", "orange", "banana"};
String[] copy = Arrays.copyOf(array, 5);
System.out.println(Arrays.toString(copy));

输出结果为:[apple, orange, banana, null, null]

注意:新数组的长度不足原数组长度时,会在新数组的后面填充null。

toString函数

Java中,toString()函数可以将数组转换成字符串输出。代码示例:

int[] array = {4, 2, 8, 1, 5, 7};
System.out.println(Arrays.toString(array));

输出结果为:[4, 2, 8, 1, 5, 7]

注意:数组的toString()函数返回的是一个字符串,所以要使用System.out.println()输出。

总结

本篇文章主要介绍了Java中数组的sort、copy和toString函数的用法。sort()函数可以用于排序,copy()函数可以用于数组的复制,toString()函数可以将数组转换成字符串输出。掌握了这几个函数的用法,可以让我们更加方便地使用数组进行编程。