在Java中,你可以通过多种方法来改变数组。以下是一些常见的方法:
排序数组
使用 `Arrays.sort()` 方法对数组进行排序。
可以通过传递自定义比较器来根据特定条件排序。
int[] array = {3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5};
Arrays.sort(array); // 升序排序
筛选元素
使用 `Stream.filter()` 方法根据条件筛选数组元素。
int[] numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int[] evenNumbers = Arrays.stream(numbers).filter(n -> n % 2 == 0).toArray();
映射元素
使用 `Stream.map()` 方法将数组中的每个元素转换为新值。
String[] strings = {"hello", "world", "java"};
String[] upperCaseStrings = Arrays.stream(strings).map(String::toUpperCase).toArray();
去除重复元素
使用 `Set.copyOf()` 方法或 `Arrays.stream().distinct().toArray()` 删除重复元素。
int[] arrayWithDuplicates = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10};
int[] uniqueArray = Arrays.stream(arrayWithDuplicates).distinct().toArray();
合并数组
使用 `Arrays.copyOf()` 方法合并多个数组。
int[] array1 = {1, 2, 3};
int[] array2 = {4, 5, 6};
int[] combinedArray = Arrays.copyOf(array1, array1.length + array2.length);
System.arraycopy(array2, 0, combinedArray, array1.length, array2.length);
替换元素
确定要替换元素的索引,使用方括号运算符访问目标元素,并将新值赋值给目标元素。
int[] array = {1, 2, 3, 4, 5};
array = 100; // 将索引为2的元素替换为100
交换元素
创建临时变量存储元素值,交换两个元素值。
int[] array = {1, 2, 3, 4, 5};
int temp = array;
array = array;
array = temp;
反转数组
分半交换元素,直至所有元素被交换。
int[] array = {1, 2, 3, 4, 5};
for (int i = 0; i < array.length / 2; i++) {
int temp = array[i];
array[i] = array[array.length - i - 1];
array[array.length - i - 1] = temp;
}
添加元素
向数组后添加元素,只需在当前 `size` 外置放置即可,并更新 `size`。
int[] array = new int;
array[array.length - 1] = 100; // 在数组末尾添加元素
删除元素
删除指定位置的元素,将后面的元素依次向前覆盖。
int[] array = {1, 2, 3, 4, 5};
array = 0; // 删除索引为2的元素
以上方法可以帮助你根据需要对Java数组进行调整。