交换两个变量的值不使用第三个变量(Java)
2013-10-18 16:06
357 查看
关于这个问题网上有好多答案,最近有人说这是个奇葩问题
个人测试了一把,如果是普通的数字的话,基本上没有问题
试了试,只用下面这种方式会 得出 -1 的结果
个人测试了一把,如果是普通的数字的话,基本上没有问题
public static void main(String[] args) { int a = 2147483647; int b = 2147483646; // a=a+b; // b=a-b; // a=a-b; // b = a + (a = b) * 0; // a = a * b; // // b = a / b; // // a = a / b; a ^=b; b ^=a; a ^=b; System.out.println(a + "," + b); }
试了试,只用下面这种方式会 得出 -1 的结果
a = a * b; b = a / b; a = a / b; 2147483646,-1
相关文章推荐
- [Java,JS] - 不使用第三个变量完成两个整数的交换
- java实现两个变量值交换不使用第三个变量
- 不使用第三个变量的情况下交换两个变量中存储的值(Java)
- 【编程技巧】java不使用第三个变量处理两个变量的交换
- JAVA不使用第三个变量,交换两个变量的值
- Java不使用第三个变量交换两个变量的数据
- 交换两个变量的值,不使用第三个变量
- 不使用第三个变量,交换两个变量的值!
- 不使用第三个变量,进行两个变量的值交换
- 交换两个变量的值,不使用第三个变量的四种方法
- 交换两个变量的值,不使用第三个变量
- 浅谈不使用第三个变量交换两个变量的值的方法
- 交换两个变量的值,不使用第三个变量
- 交换两个变量的值 不使用第三个变量
- 交换两个变量的值,不使用第三个变量的方法
- 不使用第三个变量 交换两个变量的值
- PHP交换两个变量的值,不使用第三个变量
- 交换两个变量的值,不使用第三个变量的四种法方
- 交换两个变量的值,不使用第三个变量的四种方法
- 交换两个变量的值,不使用第三个变量