Java方法详解
- 方法是解决问题的集合
- 方法包含于类或对象中
- 方法在程序中被创建,在其他地方被引用
一个方法只完成一个功能,有利于后期扩展
修饰符 返回值类型 方法名(参数类型 参数名){
方法体
return 返回值;
}
方法调用
调用方法:对象名.方法名(实参)
-
如果返回值
int max = max(30,40); -
如果返回值是void
System.out.println("hello,world");
方法的重载
类里面多个方法名相同,参数不同,根据数据类型进行调用
package yedongxin.cnblogs.www.base.method;
public class Demo02 {
static void main() {
double max = max(10.0,10.0);
}
//比大小
public static double max(double x,double y){
double result = 0;
if(x > y){
result = x;
}else if(x < y){
result = y;
}else if(x == y){
System.out.println("x = y");
return 0;
}else{
System.out.println("Error");
return 0;
}
return result;
}
public static int max(int x,int y){
int result = 0;
if(x > y){
result = x;
}else if(x < y){
result = y;
}else if(x == y){
System.out.println("x = y");
return 0;
}else{
System.out.println("Error");
return 0;
}
return result;
}
public static int max(int x,int y,int z) {
int result = 0;
if (x > y) {
result = x;
} else if (x < y) {
result = y;
} else if (x == y) {
System.out.println("x = y");
return 0;
} else {
System.out.println("Error");
return 0;
}
return result;
}
}
方法的重载规则
- 方法名称必须相同
- 参数列表必须不同(个数不同、类型不同、参数排列顺序不同等)
- 方法的返回类型可以相同可以不同
- 仅仅返回类型不同不足以成为方法的重载
命令行传参
可变参数
-
在方法声明中,在指定参数类型后加一个省略号(...)
-
一个方法中只能指定一个可变参数,必须是方法最后一个参数
package yedongxin.cnblogs.www.base.scanner;
public class Demo06 {
static void main() {
Demo06 demo06 = new Demo06();
demo06.test(1);
}
public void test(int... i){
System.out.println(i[0]);
}
}
递归
自己调用自己
递归结构包含两个部分:
- 递归头:停止条件
- 递归体:什么时候需要用到调用自身方法
package yedongxin.cnblogs.www.base.scanner;
public class Demo07 {
static void main() {
System.out.println(f(5));
}
public static int f(int n){
if(n == 1){
return 1;
}else{
return n*f(n-1);
}
}
}
浙公网安备 33010602011771号