方法重载和递归

方法的调用

修饰符 返回值类型 方法名(参数类型){
	...
	方法体
	...
	return 返回值;	 //若返回类型是void,可以省略return
}

例子:

public class Demo01{
	
	public static void main(String[] args){
		//其中1,2是实际参数:实际调用传递给它的参数
		int sum = add(1,2);
		System.out.println(sum);
	}
	// a,b是形式参数,用来定义作用的,可自行取名字,但不能是关键字,换句话来说,就是相当于方程里面的x,y一样,只是用来计算方便用的,它的值是需要其他调用这个函数的时候赋予的
	public static  int add(int a, int b){
		return a+b;
	}
	
}

方法的重载

重载就是在一个类里面有相同的方法名称,但是形参不同。

重载的条件

  • 方法名必须相同
  • 参数列表不同(个数不同,或类型不同,或参数排列顺序不同(仅限于形参存在不同的类型时))
  • 返回值的类型可以相同,也可以不同
  • 仅仅返回类型不同不足以成为方法重载
public class Demo01{
	
	public static void main(String[] args){
		//其中1,2是实际参数:实际调用传递给它的参数
		int sum = add(1,2);//调用的是第一个方法
		double s = add(1.0,2.0)//调用的是第二个方法
		System.out.println(sum);
	}


	public static  int add(int a, int b){
		return a+b;
	}
	
	
	public static  double add(int a, int b){
		return a+b;
	}
}

可变传参

在方法生命中,在指定参数类型后加一个省略号(…)。

一个方法中只能指定一个可变参数,它必须是方法的最后一个参数,任何普通的参数必须在它之前声明

public void test(int a,int ... i){
	System.out.println(i);
}

递归

递归:就是方法A调用方法A,自己调用自己

5的阶乘例子:

public class Demo02{
	public static void main(String[] args){
		System.out.println(f(5));
	}
	
	public static int f(int x){
		
		if(x==1) return 1;
		else return x*f(x-1);
	
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值