题解 | 交换变量值
交换变量值
https://www.nowcoder.com/practice/bd243c9bef70492f91959cc5556546a8
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int a = scanner.nextInt(); int b = scanner.nextInt(); //write your code here....... // 常规 a += b; b = a - b; a -= b; /* 原理: a = a + b;就是常规的加法 b = (a + b) - b = a; // 此时得到a的值 a = a - b = (a + b) - a = b; // 得到b的值 例子: a = 5; b = 8; a = a + b = 5 + 8 = 13; b = a - b = 5 + 8 - 5 = 8; a = a - b = 13 - 8 = 5; */ // 位运算 a = a^b; b = a^b; a = a^b; // 把常规通过运算符优先级一行代码实现 a = (a + b) - (b = a); System.out.println(a+" "+b); } }