原创 Arrays.copyOf方法 数组复制
分类:java 103人阅读 IT小君 2023-04-16 14:04
`Arrays.copyOf()` 是 Java 中的一个工具类方法,用于创建并返回一个新的数组,将指定数组的内容复制到新数组中。这个方法有两个参数:原数组和新数组的长度。如果新数组的长度小于原数组的长度,则新数组将被截断,只包含原数组的前面一部分内容。如果新数组的长度大于原数组的长度,则新数组的末尾将以默认值填充。
以下是 `Arrays.copyOf()` 方法的语法:
public static T[] copyOf(T[] original, int newLength)
其中,`original` 参数是要复制的原数组,`newLength` 参数是新数组的长度。方法返回一个新数组,类型与原数组相同。
下面是使用 `Arrays.copyOf()` 方法的示例代码:
String[] oldArray = {"apple", "banana", "cherry", "date", "elderberry"};
String[] newArray = Arrays.copyOf(oldArray, 3);
System.out.println(Arrays.toString(newArray));
在上面的示例代码中,我们首先定义了一个包含五个元素的字符串数组 `oldArray`,然后调用 `Arrays.copyOf()` 方法将它复制到一个新数组 `newArray` 中。由于 `newArray` 的长度为 3,因此只包含 `oldArray` 的前三个元素。最后,我们使用 `Arrays.toString()` 方法将 `newArray` 数组输出到控制台。
输出结果如下:
[apple, banana, cherry]
请注意,在上面的示例中,我们使用了泛型 `T` 来指定数组的类型。因此,`Arrays.copyOf()` 方法可以用于任何类型的数组,包括基本数据类型的数组。
关于更多 Arrays 类库方法使用详解
`java.util.Arrays` 是 Java 中的一个工具类,提供了许多方法来操作数组。以下是一些常见的方法及其用途:
1. `sort()` 方法:用于对数组进行排序。它有两种重载形式,一种用于对整型数组进行排序,另一种用于对对象数组进行排序。例如:
int[] arr = {3, 1, 4, 2, 5};
Arrays.sort(arr); // 对整型数组进行排序
System.out.println(Arrays.toString(arr));
String[] strArr = {"banana", "apple", "date", "cherry"};
Arrays.sort(strArr); // 对字符串数组进行排序
System.out.println(Arrays.toString(strArr));
输出结果:
```
[1, 2, 3, 4, 5]
[apple, banana, cherry, date]
```
2. `binarySearch()` 方法:用于在已排序的数组中查找指定元素的位置。它有两种重载形式,一种用于对整型数组进行查找,另一种用于对对象数组进行查找。例如:
```java
int[] arr = {1, 2, 3, 4, 5};
int index = Arrays.binarySearch(arr, 3); // 在整型数组中查找元素 3 的位置
System.out.println(index);
String[] strArr = {"apple", "banana", "cherry", "date"};
int strIndex = Arrays.binarySearch(strArr, "banana"); // 在字符串数组中查找元素 "banana" 的位置
System.out.println(strIndex);
```
输出结果:
```
2
1
```