Java 方法定义、方法调用、方法重载以及递归思想的总结

本文详细介绍了Java中的方法定义、调用、重载和递归的概念。方法是一个代码片段,类似于C语言的函数,可以有参数和返回值。在方法调用时,实参传递给形参并执行方法体。方法的重载允许同一方法名下根据不同的参数列表有不同的实现。最后,通过递归思想展示了如何打印一个正整数的每一位。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法的定义

方法是一个代码片段,类似C语言中的函数。
定义方法的基本语法:

//方法的定义
public static 方法返回值 方法名称 ([参数类型 形参 ...]){
 	 方法体代码;
  	 [return 返回值];
}

//方法的调用
返回值变量 = 方法名称(实参 ...);

注意:

  • 方法定义时,参数可以没有,但每个参数要指定类型
  • 方法定义时,可以没有返回值(用 void表示返回值类型)
  • 方法定义时的参数称为”形参“,方法调用时的参数称为”实参“
  • 方法的定义必须在类之中
  • java中没有”函数声明“这样的概念

方法的调用

  • 只有调用该方法的时候才会执行
  • 当方法被调用时,会将实参赋值给形参
  • 参数传递完成之后就会执行到方法体代码
  • 当方法执行完之后(遇到return语句),就执行完毕,回到方法调用的位置,继续往下执行
  • 一个方法可以被多次调用
import java.util.Scanner;

public class TextDome {
	//定义求两个数中最大值的方法
    public static int max(int a, int b){ //形参a, 形参b
        if(a < b){
            return b; 
        } else return a; //调用的时候将该值返回给方法调用处
    }        
	
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int num1 = sc.nextInt(); //定义实参num1
        int num2 = sc.nextInt(); //定义实参num2
        System.out.println(max(num1, num2)); //输出的同时调用了max(a, b)方法
    }
}    

传值调用时,实参的改变对形参并不会产生影响

方法的重载

在我们需要用一个方法同时兼容多种参数时,就可以用方法的重载

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

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

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

    public static void main(String[] args){
        double a = 10.3;
        double b = 99.4;
        int c = 55;
        System.out.println(add(a,b,c));
    }
}

同一个方法名字,提供不同版本的实现,这就是方法重载

  • 方法名相同
  • 方法的参数不同(参数个数或类型)
  • 方法的返回值类型不影响重载

方法递归

在一个方法的执行过程中调用自身,需要一种把大事化小的思想,尽量不要复盘递归的每一步逻辑(会让你的脑瓜子嗡嗡的),多考虑一下总的变化方式。

// 用递归的思想打印一个正整数的每一位
public class Text {
    public static int printNumber(int n){
        if(n < 10){
            System.out.print(n);
            return n;
        }
        printNumber(n / 10);
        System.out.print(n % 10);

        return n;
    }

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值