在 Java 数组中调换两个数的方法有四种:使用临时变量使用异或运算使用 Collections.swap() 方法使用 Java 8+ 的流
在 Java 数组中调换两个数
方法 1:使用临时变量
int[] arr = {1, 2, 3};
int temp = arr[0];
arr[0] = arr[1];
arr[1] = temp;方法 2:使用异或运算
异或运算符 (^) 可以用来调换两个数字,而不需要临时变量:
int[] arr = {1, 2, 3};
arr[0] ^= arr[1];
arr[1] ^= arr[0];
arr[0] ^= arr[1];这个过程的工作原理如下:
方法 3:使用 Collections.swap() 方法
如果数组是由集合类(如 ArrayList)存储的,则可以使用 Collections.swap() 方法轻松调换两个数字:
Listlist = new ArrayList<>(); list.add(1); list.add(2); list.add(3); Collections.swap(list, 0, 1);
方法 4:使用 Java 8+ 的流
Java 8+ 中的流 API 提供了一种方便的方法来调换数组中的两个数字:
int[] arr ={1, 2, 3}; int temp = IntStream.of(arr[0], arr[1]) .reduce((a, b) -> a ^ b) .getAsInt(); arr[0] ^= temp; arr[1] ^= temp; arr[0] ^= temp;