A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wuyingtong 中级黑马   /  2015-4-23 16:56  /  636 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*
需求1:请用最有效率的方式计算出2乘以8的结果?
分析:使用位运算是最有效率的方式,因为是乘法运算,所以是左移。

需求2:请自己实现2个整数变量的交换。
分析:四种方法
        A:使用第三方变量
        B:使用加法运算
        C:使用^运算符运算
        D:一句话搞定
*/
class OperatorDemo1{
        public static void main(String[] args){
        //需求1:请用最有效率的方式计算出2乘以8的结果?
                //先定义一个变量max来接收运算后的结果。
                int max = 2<<3;//因为8是2的3次方,所以左移3位。
                        System.out.println("max="+max);
        System.out.println("---------------------");
               
        //需求2:请自己实现2个整数变量的交换。
                //A:使用第三方变量
                int a = 10;
                int b = 20;
                        System.out.println("a="+a+",b="+b);
                //int temp = a;
                //        a = b;
                //        b = temp;
                //        System.out.println("a="+a+",b="+b);
        System.out.println("---------------------");
                //B:使用加法运算
                //        a = a+b;//先将a和b的和计算出来,再用和去减
                //        b = a-b;
                //        a = a-b;
                //        System.out.println("a="+a+",b="+b);
        System.out.println("---------------------");
                //C:使用位异或
                //        a = a ^ b;
                //        b = a ^ b;//相当于a^b^b=a
                //        a = a ^ b;//相当于a^a^b=b
                //        System.out.println("a="+a+",b="+b);
                //D:一句话搞定
                        b = (a+b)-(a=b);
                        System.out.println("a="+a+",b="+b);
        }
}


评分

参与人数 1技术分 +1 收起 理由
lwj123 + 1

查看全部评分

6 个回复

倒序浏览
来学习一下……
回复 使用道具 举报
第四种一句话搞定受教了,
回复 使用道具 举报
b = (a+b)-(a=b);
System.out.println("a="+a+",b="+b);
这种方法是可以,但我有点不明白,它不应该先算a=b然后再算a+b再算(a+b)-(a=b)的吗?
求指教!
回复 使用道具 举报
学习学习!
回复 使用道具 举报
caotierong 发表于 2015-4-23 18:07
b = (a+b)-(a=b);
System.out.println("a="+a+",b="+b);
这种方法是可以,但我有点不明白,它不应该先算a= ...

运算是从左到右的,因为都有小括号,
回复 使用道具 举报
赞一下。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马