Java 方法

方法

方法概念

方法就是用来被调用的 设计原则 解释一个方法只完成一个功能 修饰符 返回值 方法名(参数类型 参数名){ .... .... }

修饰符:public private protected static 返回值类型: int double float ...... void

   
//加法  传入两个int值返回一个int 的值
public int add(int a, int b){ //传入 a和b
    return a+b; //返回一个int 值为a+b
}
​
​
// 不传入数据 也不返回数据 只执行方法体
public void print(){
    System.out.println("打印");
}
 

void 不用返回只执行方法体

其他都需要返回设定的固定数据类型

 

实际参数: 是具体的数值

形式参数: 方法名字括号中的变量

 

注意事项

  • return 是会直接结束方法

 

方法重载

一个类中有一一样的函数名称但是要有不同

  • 参数类型不同

  • 返回类型不同

  • 参数数量不同

public int add(int a, int b){ //传入 a和b
    return a+b; //返回一个int 值为a+b
}
​
public int add(int a, int b, int c){ //传入 a和b
    return a+b; //返回一个int 值为a+b
}
​
​
public double add(double a, doule b){ //传入 a和b
    return a+b; //返回一个double 值为a+b
}
​
​
public void add(){ 
   System.out.println("add");
}

命令行传参数

public static void main(String[] args) {
        for (int i = 0; i < args.length; i++) {
            System.out.println("args["+ i +"]: "+ args[i]);
        }
    }

在用java 命令运行时 在后面加入 字符 就会传入args

java mthedName heiehie hehe

//heiehi 和 hehe 会传入args数组 args[0]=heiehi args[1]=hehe

 

可以变参数

 

public class Conditions {
    public static void main(String[] args) {
       Conditions conditions = new Conditions();
               conditions.print(1,2,2,3,4); //传入多少个参数都可以
    }
    public void print(int... c){ //传入不定量的数据 存入组数c
        for(int i=0;i<c.length;i++){ //遍历传入的数字
            System.out.println(c[i]);
        }
    }
}

注意点:

不定量参数一定要写在参数最后 (int a 不可以卸载 int...c之后)

public void print(int a,int... c){ //传入不定量的数据 存入组数c
        for(int i=0;i<c.length;i++){ //遍历传入的数字
            System.out.println(c[i]);
        }

递归

就是自己调用自己

两个部分:

  • 递归头:什么时候不再调用自身的方法。没有头就会死循环

  • 递归体:什么时候需要调用自身方法。

经典案例 阶乘

public class Conditions {
    public static void main(String[] args) {
       Conditions conditions = new Conditions();
​
        System.out.println(conditions.factorial(3)); //输出6
    }
    public int factorial(int a) {
        if(a==1||a==0) {
            return 1;
        }
        return a*factorial(a-1);
    }
}

就自己调用自己 打开一个方法 直到 a==1 的时候程序运行到底:返回1 方法全部收回。

前阶段:打开方法

返回阶段:程序运行到底 一层一层返回

tips: 递归会带来大量的时间和空间复杂 一般不使用递归。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值