1 使用位运算,异或
a= a^b;
b=a^b;
a=a^b;
public static void quickSwap(int vaules[]){
values[0] = values[0]^values[1];
values[1] = values[0]^values[1];
values[0] = values[0]^values[1];
}
2,加减操作符 但可能有溢出情况:a = a + b句,如果a和b都是比较大的两个数,则a = a + b是就会超界。
a = a + b;
b = a - b;
a= a - b;
同理
a=a*b;
b=a/b;
a=a/b;
3,对2的解决方法:
a=b+(b=a)*0;
现执行()里面的,他的优先级高
b=a
已经将a的值转给b
然后*0,值为0,
a=b+0