递归算法

递归(recursion):程序调用自身的编程技巧 。
递归满足2个条件:
1)有反复执行的过程(调用自身)
2)有跳出反复执行过程的条件(递归出口)
我这边自己的理解就是反复调用自己本身
以前有写过简单的demo
public class TestName { public static void main(String[] args) {
  String name = "usenr_name_uu_u_";
  //找到下划线并且把下划线后面的字母改成 大写
  String anotherName=getName(name,name);
  System.out.println("转化前:"+name);
  System.out.println("转化后:"+anotherName); } private static String getName(String name,String anotherName) {
  name=anotherName;
  //如果最后一个是_ 不做转换
  if(name.indexOf("_")>0&&name.length()!=name.indexOf("_")+1){
   int lengthPlace=name.indexOf("_");
   name=name.replaceFirst("_", "");
   String s=name.substring(lengthPlace, lengthPlace+1);
   s=s.toUpperCase();
anotherName=name.substring(0,lengthPlace)+s+name.substring(lengthPlace+1);
  }else{
   return anotherName;
  }
  return getName(name,anotherName);
}
}
 
【递归算法】


    推荐阅读