java 递归怎么写,求教啊 啊

public static String getXSDLabel(Element element,String name) {
return name;
}

public static String getXSDLabel(Element element,String name) {
if(满足递归结束条件,跳出函数)
return name;
else
getXSDLabel(Element element,String name)
}

这样就是递归,不过需要加判断条件确定什么时候递归结束,跳出函数

上面的错了,不是return getXSDLabel(Element element,String name),而是直接调用

可以看下斐波那契数列,很经典的递归

public int A(Element b) {
if(满足递归结束条件,跳出函数)
return b;
else
return A(Elementb)
}

http://blog.csdn.net/cuiwjava/article/details/46776473

****斐波那契数列

递归 就是方法本身调用自己啦!定义方法A(int num),if(x>1) , A( nun);

你给的这个不知道是什么具体的含义,你还是参考下斐波那契数列的写法。很经典的。

以下是一个递归求阶乘的例子,请楼主笑纳。。
public class DiGui {
//递归求阶乘
public static void main(String[] args) {
long sum=0;//求阶乘的和
for(int i=1;i<=4;i++){
sum=sum+digui(i);

}
System.out.println(sum);
}

public static long digui(int n){
    if(n==1){
        return 1;
    }else{
        return n*digui(n-1);//递归调用
    }
}

}

解决了什么是递归,就很简单了;不是什么问题都 适合使用递归解决的!
http://www.cnblogs.com/seaven/archive/2010/12/17/1908953.html

简单来说 就是自己调用自己

递归:

      递归思想就是数学上的递推思想,整个事物处理的过程并不全部都是由我来完成,我只是负责一部分,然后剩下的交给别人(本方法的再次调用)去做,这就是生活中的递推思想。

      简单说就是函数自身直接或者间接的调用到了自身(在本方法内部调用本方法)。

一个功能在被重复使用,并每次使用时,参与运算的结果和上一次调用有关,这时可以用递归来解决问题。 

      注意:

      1、递归一定明确条件,否则容易栈溢出;

      2、注意一下递归的次数;

      递归的语法及其简单,但是递归的思想不容易理解;

      举例:      

public class Demo { // 输出n-m,通过两个递归来完成 public static void f3(int begin, int end) { if (begin > end) return; int n = (begin + end) / 2; f3(begin, n - 1); System.out.print(n + "\t"); f3(n + 1, end); } // 输出n-m public static void f2(int begin, int end) { System.out.print(begin + "\t"); if (begin < end) f2(begin + 1, end); } // 输出1-n public static void f1(int n) { if (n >= 1) f1(n - 1); System.out.print(n + "\t"); } public static void main(String[] args) { f1(5); System.out.println(); f2(6, 11); System.out.println(); f3(12, 17); }}

public class Demo{ // 求N的阶层使用for循环完成 public static int method1(int n) { int result = 1; for (int i = 1; i <= n; i++) { result *= i; } return result; } // 求n的阶层使用递归的方法完成 public static int method2(int n) { if (n == 1) return 1; return n * method2(n - 1); } public static void main(String[] args) { System.out.println("利用循环求5!=" + method1(5)); System.out.println("利用递归求5!=" + method2(5)); }}