Java不使用中间变量交换两个数
在程序中实现交换两个数的功能并不复杂,但如果不使用中间变量,需要动一下脑筋。在本文介绍了两个方法(其实原理都是一个)。其基本原理是数的中和。也是说,通过某种运算(二元运算)将a和b两个数变成一个数,并保存在其中一个变量中。然后再通过同 样的运算符将a或b中和掉。这样实际上是利用了a或 b本身作为了中间变量。 先看第一个算法。 static class Num { int a; int b; } public static void swap1(Num num) { num.a = num.a + num.b; num.b = num.a - num.b; num.a
用户评论