写一个泛形方法名称为swap,实现指定位置数组元素的交换.数组和要交换的索引作为方法参数。
时间: 2024-04-15 20:30:58 浏览: 113
好的,我可以帮你写一个泛型方法 `swap` 来实现指定位置数组元素的交换。以下是方法的代码实现:
```java
public class Main {
public static <T> void swap(T[] array, int index1, int index2) {
if (index1 < 0 || index1 >= array.length || index2 < 0 || index2 >= array.length) {
throw new IndexOutOfBoundsException("Invalid index");
}
T temp = array[index1];
array[index1] = array[index2];
array[index2] = temp;
}
public static void main(String[] args) {
Integer[] numbers = {1, 2, 3, 4, 5};
System.out.println("Before swapping: " + Arrays.toString(numbers));
swap(numbers, 1, 3);
System.out.println("After swapping: " + Arrays.toString(numbers));
}
}
```
这个 `swap` 方法接受一个泛型数组 `array`,以及两个要交换的索引 `index1` 和 `index2`。它首先检查索引是否有效,然后使用临时变量 `temp` 来交换两个索引位置上的元素。
在 `main` 方法中,我们创建了一个整数数组 `numbers` 来演示使用 `swap` 方法进行元素交换。在调用 `swap(numbers, 1, 3)` 后,我们打印出交换后的数组内容。
运行这段代码,将会得到以下输出:
```
Before swapping: [1, 2, 3, 4, 5]
After swapping: [1, 4, 3, 2, 5]
```
可以看到,索引为 1 和索引为 3 的元素进行了交换。
阅读全文