日期:2014-05-20  浏览次数:20565 次

返回值
Java code

public class Test1 {
    int femin(int i){
        return i++;
    }
    public static void main(String[] args) {
        int a = 0;
        int b = new Test1().femin(a);
        System.out.println(b);
        //TODO 返回值
    }

}

为什么是0

------解决方案--------------------
区分i++与++i的执行顺序
return i++ 这行执行是return i然后i++,所以实际上return i++;跟return i;效果一样
return ++i是先执行i=i+1,然后再返回i变化后的值
如果你想返回i+1的值,应该是return ++i;
Java code
public class Test1 {
    int femin(int i){
        return ++i;
    }
    public static void main(String[] args) {
        int a = 0;
        int b = new Test1().femin(a);
        System.out.println(b);
        //TODO 返回值
    }

}

------解决方案--------------------
区分i++与++i的执行顺序
return i++ 这行执行是return i然后i++,所以实际上return i++;跟return i;效果一样
return ++i是先执行i=i+1,然后再返回i变化后的值
如果你想返回i+1的值,应该是return ++i;