递归
- 递归结构包括两个部分
- 递归头:什么时候不调用自身方法,如果没有头部,将陷入死循环(就是边界条件)
- 递归体:什么时候需要调用自身方法
public class Demo {
// 5! 5*4*3*2*1
public static int f(int n){
if (n ==1){
return 1;
}else{
return n*f(n-1);
}
}
public static void main(String[] args) {
int temp = f(5);
System.out.println(temp);
}
}
- 作业:写一个计算器,要求实现加减乘除功能,并且能够循环接收新的数据,通过用户交互实现
- 思路推荐:
- 1 写四个方法:加减乘除
- 2 利用循环+switch进行用户交互
- 3 传递需要操作的两个数
- 4 输出结果
public class Calculate {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入:");
int x = scanner.nextInt();
char c = scanner.next().charAt(0);//读入控制台第一个字符
int y = scanner.nextInt();
switch (c){
case '+':
sum(x,y); break;
case '-':
sub(x,y); break;
case '*':
mul(x,y); break;
case '/':
div(x,y); break;
}
}
public static void sum(int a, int b){
System.out.println(a+b);
}
public static void sub(int a, int b){
System.out.println(a-b);
}
public static void mul(int a, int b){
System.out.println(a*b);
}
public static void div(int a, int b){
System.out.println(a/b);
}
}