public void text1() {
int[] arr = {122,25,45,444,12,135,144};
for ( int a=0;a<arr.length;a++){
for (int b=0;b<arr.length;b++){
if (arr[a] > arr[b]) {
arr[a]=arr[a]^arr[b];
arr[b]=arr[a]^arr[b];
arr[a]=arr[a]^arr[b];
}
}
}
System.out.print(Arrays.toString(arr));
}
@Test
public void test2(){
int[] arr = {122,25,45,444,12,135,144};
for ( int a=0;a<arr.length;a++){
for (int b=0;b<arr.length;b++){
if (arr[a] > arr[b]) {
arr[a]=arr[a]+arr[b];
arr[b]=arr[a]-arr[b];
arr[a]=arr[a]-arr[b];
}
}
}
System.out.print(Arrays.toString(arr));
}
方法一:是使用"^"运算符进行预算,是将数字转换为二进制进行运算,两边相同就为假,不同就为真,例如:6^5=?6转换为二进制为110,5转换为为二进制为101,那么就是
而011转换为十进制就是3,那么知道了"^"是怎么运算的你就可以自己去验证一下我上面使用的交换位置是不是正确的,自己去算一下理解的更透彻哦;
第二种:就是简单的加减运算符交换位置
如果大家还有其他方法可以给我分享分享哈哈哈哈