黑马程序员技术交流社区

标题: 这个编译过程是怎么回事? [打印本页]

作者: God’s favoure    时间: 2014-10-21 21:25
标题: 这个编译过程是怎么回事?
public class TypeDemo {
        public static void main(String[]agr){
                int a = 4;
                int b = 2;
                leftShift(a,b);
                System.out.println(a);
        }
        public static int leftShift(int a ,int b){
                return a =a+b;
        }
}
作者: God’s favoure    时间: 2014-10-21 21:26
我太笨了,我去,这个是个小陷阱,因为函数根本没有被用上.
作者: 迷茫小王    时间: 2014-10-21 22:20
恩 leftshift函数计算出来的值都没被调用啊
作者: 皮三藏    时间: 2014-10-22 21:28
Java是按值传递,在调用的方法结束后,是不会修改传递过程中的参数的
作者: wanmei0398    时间: 2014-10-23 13:47
返回的只是一个值,仅仅是一个值。你return a =a+b和return a+b 是相同的。并不是赋值给a。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2