zoukankan      html  css  js  c++  java
  • Java小案例——交换两个数值的三种方法

    要求:

      互换两个数的值


    方法一:借助第三方变量

    /**
     * 借助第三方变量对两个值进行互换
     * @author Administration
     *
     */
    public class ExchangeValue {
    
        public static void main(String[] args) {
            int a = 10;
            int b = 15;
            System.out.println("a的值:"+a+",	b的值:"+b);
            System.out.println("对两个值执行互换操作...");
            int temp = a;
            a=b;
            b=temp;
            System.out.println("a的值:"+a+",	b的值:"+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+",	b的值:"+b);
            System.out.println("对两个值执行互换操作...");
            a=a+b;  
            b=a-b;
            a=a-b;
            System.out.println("a的值:"+a+",	b的值:"+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+",	b的值:"+b);
            System.out.println("对两个值执行互换操作...");
            a=a^b;
            b=a^b;
            a=a^b;
            System.out.println("a的值:"+a+",	b的值:"+b);
        }
    }

    原理:某个数值a与一个数值b进行异或运算得到c,则再用c与b运算可以还原a。因此这个原理可以实现两个数值的交换。

    运行结果:

    a的值:10,    b的值:15
    对两个值执行互换操作...
    a的值:15,    b的值:10
  • 相关阅读:
    asp.net 用户页面权限判断
    asp.net Forms表单验证授权
    asp.net 数据绑定
    asp.net 初识
    .net 中ashx文件的应用理解
    记录第一次给linux配置网络,在虚拟机中连接真实网络
    linux 常用命令
    oracle 建分区表,时间自增
    python(9)- python基础知识刷题
    孤荷凌寒自学python第123天区块链037以太坊的 erc20代币07
  • 原文地址:https://www.cnblogs.com/Mus-Li/p/6936747.html
Copyright © 2011-2022 走看看