您的位置:首页 > 编程语言 > Java开发

java学习之路(7)- 方法与递归

2017-07-12 22:58 239 查看

方法:

Java方法是组合在一起来执行操作语句的集合。

方法定义包括方法头和方法体。下面是一个方法的所有部分:

* 修饰符

* 返回类型

* 方法名称

* 参数

* 方法体

/**
*  方法的语法:
*  修饰符 返回值类型 方法名(形式参数列表){
*      方法体;
*  }
*/
public class Method {
public static void main(String[] args) {
int num = add(11,33);//调用方法,11,33是实参
System.out.println(num);//输出:44
}
//定义方法
public static int add(int num1,int num2){//形参,int是定义形参类型,public是访问修饰符
return num1+num2;
}

}


递归:

递归问题,可以划分为一个或多个子问题,而处理子问题的规则与处理原问题的规则是一样的。

在设计递归算法时,主要需考虑以下两方面的问题:

1.确定方法的目的

确定递归公式。把规模大的、较难解决的问题变成规模较小、易解决的同一问题,需要通过哪些步骤或等式来实现?这是解决递归问题的难点。

确定边界条件。在什么情况下可以直接得出问题的解?这就是问题的边界条件及边界值。

/**
* 假设设一个方法-->找规律-->找边界
*/
public class Recursion {
public static void main(String[] args) {
//用递归计算前n项之和:如1+2+3+...+100的和
Scanner in = new Scanner(System.in);
System.out.println("请输入一个整数");
int num = in.nextInt();
System.out.println(Compute(num));
}
//分析:
//假设Compute(n)是前n项的和
//Compute(n-1)是前n-1项的和
//找规律:
//规律:Compute(n)=Compute(n-1)+n;
//边界:(不满足上面规律的n值) 1
//定义方法:
public static int Compute(int n){
if(n==1){
return 1;
}
return Compute(n-1)+n;
}
}


如果大牛发现有错误或不对或理解有误,欢迎指正。

不断的在学习中成长。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java