------解决方案-------------------- 这是一个好题 但是我觉得还没有好的回复 坐等看好的回复!!
------解决方案-------------------- 好题啊 主要是i=i++;这句算术运算符的运算顺序要搞清楚赋值运算符最后执行!
------解决方案-------------------- 一、fermin方法不会改变main方法里的i的值,因为你在t.fermin(i)这里把i=0传过去fermin方法的时候,已经是复制了一个i对象了,fermin里面的i++改变的是i的复制而不是i本身。所以在t.fermin(i)这句之后 i仍然是0。 二、程序运行到i=i++这里,i仍然是0(如上一步所说) 这里可以理解为: i = i;// i =0; println(i); i=1;//先打印,然后i再变成一
------解决方案--------------------
------解决方案-------------------- 如果要打印2
Java code
public class TestDemo
{
static int add(int i)
{
[color=#FF0000]return[/color] ++i;
}
public static void main(String[] args)
{
int i = 0;
TestDemo testDemo = new TestDemo();
[color=#FF0000]i = testDemo.add(i);[/color]
i = ++i;
System.out.println(i);
}
}