java方法
方法的定义和调用
java的方法类似于其它语言的函数,是一段用来完成特定功能的代码片段。
方法包含一个方法头和一个方法体:如下是一个方法的所有部分
修饰符、返回值类型、方法名、参数类型、方法体
修饰符 返回值类型 方法名(参数类型 参数名){
...
方法体
...
return 返回值;
}
public static void main(String[] args) {
int sum = add(1, 2);//调用方法
System.out.println(sum);
}
//加法方法
public static int add(int a,int b){
return a+b;
}
方法的重载
在一个类中,有相同的函数名称,但形参不同的函数
规则:
- 方法名称必须相同
- 参数列表必须不同
- 方法的返回类型可以相同也可以不同
- 仅仅返回类型不同不足以成为方法的重载
public static void main(String[] args) {
int max = max(10,20); //调用int方法
//double max = max(10,20); 调用double方法
System.out.println(max);
}
//比大小,定义浮点数类型
public static double max(double num1,double num2) {
double result = 0;
if (num1==num2) {
System.out.println(num1+"="+num2);
return 0;
}
if (num1>num2) {
result = num1;
}else {
result = num2;
}
return result;
}
//比大小,定义整型类型
public static int max(int num1,int num2) {
int result = 0;
if (num1==num2) {
System.out.println(num1+"="+num2);
return 0;
}
if (num1>num2) {
result = num1;
}else {
result = num2;
}
return result;
}
可变参数
在方法声明中,在指定参数类型后加一个省略号(...)
一个方法中只能指定一个可变参数,它必须是方法的最后一个参数,任何普通参数必须在他之前声明
public static void main(String[] args) {
//调用可变参数的方法
Demo04 demo04 = new Demo04();
demo04.test(1,2,3,4,5,6);
}
public void test(int...i){
System.out.println(i[0]);
System.out.println(i[1]);
System.out.println(i[2]);
System.out.println(i[3]);
System.out.println(i[4]);
System.out.println(i[5]);
}
递归
就是自己调用自己
public static void main(String[] args) {
//打印五的阶乘
System.out.println(f(5));
}
public static int f(int n){
//1的阶乘为1
if (n==1) {
return 1;
}else {
return n*f(n-1);
}
}