Java的方法讲解

本文详细介绍了Java中的方法,包括方法的概念、组成部分,以及不同类型(无参无返回值、有参无返回值、无参有返回值、有参有返回值)方法的定义、调用示例和注意事项。同时涵盖了递归的概念及其在求阶乘和斐波那契数列中的应用。
摘要由CSDN通过智能技术生成

目录

一、方法的概念

二、方法的组成部分

三、方法的定义

3.1无参无返回值

 3.2有参无返回值

 3.3无参有返回值

3.4有参有返回值

 四、方法的调用

4.1调用无参无返回值

4.2调用有参无返回值

4.3调用无参有返回值

4.4调用有参有返回值

五、注意

六、方法的递归

6.1递归

6.2递归应用


一、方法的概念

方法:封装了一些为了解决某个问题而编写的代码片段称之为一个方法。可以反复使用

二、方法的组成部分

public static void main(String[] args) { }

  • public 公共的 方法的访问修饰符
  • static 静态的 方法的修饰符
  • void 空白的 方法的返回值类型
  • main 主要的 方法的名称    方法名需要满足标识符的命名规范
  • () 方法的参数列表
  • {} 方法体

方法的组成部分: 方法的定义 方法体

三、方法的定义

3.1无参无返回值

public static void 方法名(){}

案例:定义一个方法,实现关门

代码展示:

public static void closeDoor() {
System.out.println("关门");
}

 3.2有参无返回值

public static void 方法名(数据类型 参数名,数据类型 参数名,...){}

案例:定义一个方法,打印三角形,(三角形行数有调用者来确定)

代码展示:

//参数的格式:数据类型 参数名 (方法的形式参数)简称形参
    public static void printSjx(int num){
        for (int i = 1; i <=num ; i++) {
            for (int j = 1; j <=i; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }

 3.3无参有返回值

public static 数据类型 方法名(){}

案例:定义一个方法,求100质数的个数

代码展示:

//质数:只能被1和本身整除的数字就是质数
    //如果一个数能被2到这个数-1之间的数字整除那么这个数就不是质数
    public static int count(){
        //定义一个变量来进行计数
        int count=0;
        for (int num = 2; num <=100 ; num++) {
            //定义一个信号量表示是否是质数,true表示是质数
            boolean flag=true;
            for (int j = 2; j <num ; j++) {
                if(num%j==0){
                    //这个数不是质数
                    flag=false;
                    break;
                }
            }
                if (flag == true){
                    count++;
                    System.out.println("质数"+num);

            }

        }
        return count;

    }

3.4有参有返回值

public static 数据类型 方法名(数据类型 参数名,...){}

案例:定义一个方法,求1-n的阶乘

 代码展示:

public static long jc(int n) {
long jc = 1;
for (int i = 1; i <= n; i++) {
jc = jc * i;
}
return jc;
}

 四、方法的调用

4.1调用无参无返回值

方法名();

//调用方法

closeDoor();

4.2调用有参无返回值

方法名(实参);

//调用方法

printSJ(10);

4.3调用无参有返回值

返回值类型 变量名 = 方法名();

System.out.println(方法名());

//调用方法

int sum = sum();

System.out.println(sum);

4.4调用有参有返回值

返回值类型 变量名 = 方法名(实参);

System.out.println(方法名(实参))

//方法调用

long jc = jc(10);

System.out.println(jc);

五、注意

1、在java中,方法不允许嵌套(方法不能定义在另一个方法中,方法要定义在类的里面,其他方法的外面)
2、一个方法定义了没有调用,他是不会执行的
3、调用有参数的方法时,我们要保证形参和实参一致(个数一致,顺序一致,类型一致)
4、如果一个方法有返回值,那么这个方法必须要有return 值;而且值的类型必须要与定义的返回值的类型保持一致(允许自动转换);没有返回值的方法可以写return(表示结束方法),有返回值的方法必须要写return 返回值
5、如果一个方法有返回值,可以不接收方法的返回值,也可以正常的调用方法
6、如果一个方法有返回值,那么在方法内部的每一个分支下都需要有返回值

六、方法的递归

6.1递归

解决具有既定规律的问题时,在方法内部再次调用自身方法的一种编程方式。

递归的两个过程
      递进:大问题简化成小问题
      回溯:一步一步的给出结果

6.2递归应用

案例1:求某个数的阶乘

代码展示:

//案例1:求某个数的阶乘
    public static int jc(int num){
        if(num==1){
            return 1;
        }
        return num*jc(num-1);
    }

 案例2:求斐波那契数列第n项

代码展示:

//案例2:求斐波那契数列第n项
    public static int fbnq(int n){
        if(n==1||n==2){
            return 1;
        }
        return fbnq(n-1)+fbnq(n-2);
    }

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值