Java三种方式交换两个变量的值

举报
YuShiwen 发表于 2022/03/30 23:01:57 2022/03/30
【摘要】 直接上代码,代码注释里有详细的说明。 public class SwapTest { public static void main(String[] args) { int n...

直接上代码,代码注释里有详细的说明。

public class SwapTest {
    public static void main(String[] args) {
        int num1 = 10;
        int num2 = 20;

        //方式一:定义临时变量的方式
        //推荐使用方式
        int temp = num1;
        num1 = num2;
        num2 = temp;
        System.out.println("方式一num1:"+num1);
        System.out.println("方式一num2:"+num2);

        //方式二:
        //好处:不用定义临时变量
        //弊端:① 相加操作可能超出存储范围
        //     ② 有局限性:只能适用于数值类型
        num1 = 10;
        num2 = 20;
        num1 = num1 + num2;
        num2 = num1 - num2;
        num1 = num1 - num2;
        System.out.println("方式二num1:"+num1);
        System.out.println("方式二num2:"+num2);

        //方式三:使用位运算符
        //有局限性:只能适用于数值类型
        num1 = 10;
        num2 = 20;
        num1 = num1 ^ num2;
        num2 = num1 ^ num2;
        num1 = num1 ^ num2;
        System.out.println("方式三num1:"+num1);
        System.out.println("方式三num2:"+num2);
    }

}

  
 

运行结果:

方式一num1:20
方式一num2:10
方式二num1:20
方式二num2:10
方式三num1:20
方式三num2:10

Process finished with exit code 0
  
 

文章来源: blog.csdn.net,作者:Mr.Yushiwen,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/MrYushiwen/article/details/109609316

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。