黑马程序员技术交流社区
标题:
Java基础问题一个,return的问题
[打印本页]
作者:
迅雷
时间:
2016-6-23 08:53
标题:
Java基础问题一个,return的问题
class Demo
{
public static int fun(int c)
{
return c+=2;
}
public static void main(String[] args)
{
int temp = fun(2);
System.out.println(temp);
}
}
A. 2
B. 4
C. 6
D. 8
一道选择题,答案是B,问什么return c++结果是2,return c+=2结果就是4呢,执行流程有什么不一样吗,求解
作者:
吴风斌
时间:
2016-6-23 11:19
c++结果是2,return c+=2
C++ 是C完成运算
后
C的值+1 运算过程中C值就是初始值
C+=2 --> C = C + 2;
作者:
syinys7
时间:
2016-6-23 16:57
C++是自增 相当于 C=C+1
C+=2是扩展赋值运算符,将两边的数进行运算,结果赋值给左边,相当于 C=C+2
作者:
迅雷
时间:
2016-6-23 22:32
吴风斌 发表于 2016-6-23 11:19
c++结果是2,return c+=2
C++ 是C完成运算 后 C的值+1 运算过程中C值就是初始值
就是说C++相当于C=C++,返回值是C,也就是初始化值
C+=2相当于C=C+2,C+2运算后赋值给左边的C,返回值是赋值后的C值
可以这样理解吗
作者:
吴风斌
时间:
2016-6-29 09:49
差不多 你找for循环看一看就懂了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2