Java小案例——交换两个数值的三种方法
Posted 沐易笙
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java小案例——交换两个数值的三种方法相关的知识,希望对你有一定的参考价值。
要求:
互换两个数的值
方法一:借助第三方变量
/** * 借助第三方变量对两个值进行互换 * @author Administration * */ public class ExchangeValue { public static void main(String[] args) { int a = 10; int b = 15; System.out.println("a的值:"+a+",\tb的值:"+b); System.out.println("对两个值执行互换操作..."); int temp = a; a=b; b=temp; System.out.println("a的值:"+a+",\tb的值:"+b); } }
运行结果:
a的值:10, b的值:15
对两个值执行互换操作...
a的值:15, b的值:10
方法二:不需要借助第三方变量(加减运算)
/** * 不需要借助第三方变量对两个值进行互换 * @author Administration * */ public class ExchangeValue { public static void main(String[] args) { int a = 10; int b = 15; System.out.println("a的值:"+a+",\tb的值:"+b); System.out.println("对两个值执行互换操作..."); a=a+b; b=a-b; a=a-b; System.out.println("a的值:"+a+",\tb的值:"+b); } }
运行结果:
a的值:10, b的值:15
对两个值执行互换操作...
a的值:15, b的值:10
方法三:不需要借助第三方变量(异或运算)
/** * 不需要借助第三方变量对两个值进行互换 * @author Administration * */ public class ExchangeValue { public static void main(String[] args) { int a = 10; int b = 15; System.out.println("a的值:"+a+",\tb的值:"+b); System.out.println("对两个值执行互换操作..."); a=a^b; b=a^b; a=a^b; System.out.println("a的值:"+a+",\tb的值:"+b); } }
原理:某个数值a与一个数值b进行异或运算得到c,则再用c与b运算可以还原a。因此这个原理可以实现两个数值的交换。
运行结果:
a的值:10, b的值:15
对两个值执行互换操作...
a的值:15, b的值:10
以上是关于Java小案例——交换两个数值的三种方法的主要内容,如果未能解决你的问题,请参考以下文章