J2SE之基础语法_方法_递归调用

方法

public class TestMethod {
    public static void main(String[] args) {
        m();
        m2(2);
        m3('3', 4);
        m4(4, 6);
        int i = m4(4, 6);
        System.out.println(i);
    }
    
    public static void m() {
        //return;方法返回,结束,后面的不会执行,出错
        System.out.println("ok");
        System.out.println("hello");
    }
    
    public static void m2(int i) {
        if(i > 3) 
            return;  //有条件的return,不会出错
        System.out.println(i);
    }
    
    public static void m3(int i, int j) {
        System.out.println(i + j);
    }
    
    public static int m4(int i, int j) {
        return i > j ? i : j;
    }
}

 递归调用

 

 

 

非递归

public class Febo
{
    public static void main(String[] args){
        System.out.println(f(-2));
    }
    public static long f(int index){
        if(index <1){
            System.out.println("Invalid parameter");
            return -1;
        }
        if(index == 1 || index == 2){
            return 1;
        }
        long f1=1;
        long f2=1;
        long f=0;
        for(int i=0;i<index-2;i++){
            f=f1+f2;
            f1=f2;
            f2=f;
        }
        return f;
    }
}

 

总结

 

posted on 2015-08-28 00:37  gimin  阅读(178)  评论(0)    收藏  举报