【Java----函数(function)】

本文详细介绍了函数在编程中的概念,包括无参和有参函数、无返回值和有返回值函数的区别,以及函数重载和递归的概念。通过实例演示了如何在Java中定义和调用函数,以及函数分类的重要性和应用场景。

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

一、函数是什么?

具有名称的特定功能代码的集合。函数就是定义在类中的具有特定功能的一段独立小程序,并能被多次使用。
使用函数的目的:提高代码的复用度

二、函数的定义

访问权限修饰符[static] 返回值的类型 函数名称([形式参数列表]{
//函数体 由一行或者多行代码组成
//[return 返回返回值]
}
注意:在Java中函数定义在类中,是类的成员,不能定义在main函数中。

示例:定义一个printFunction()函数,控制台输出“Hello”

public class FunctionDemo1 {
    public static void main(String[] args) {
     
    }
    
    public static void printFunction(){
        System.out.println("Hello");   
    }
}

三、函数的调用

当函数定义完成后,不会自己执行,需要调用来执行,函数名称([实际参数列表])

public class FunctionDemo1 {
    public static void main(String[] args) {
        PrintFunction();//函数调用
    }
    
    public static void printFunction(){
        System.out.println("Hello");   
    }
}
函数调用的本质:函数本质是一个对象,存储在堆里。
当调用完成后,会立刻弹出栈,

四、函数的分类

1.通过函数是否存在参数分为:无参函数、有参函数

无参

public static void printInformation(){
	System.out.println("姓名:张三");
}

有参

public static void printInformation(String name){
	System.out.println("姓名:"+name);
}

2.函数是否需要返回计算结果分为:无返回值、有返回值

public static int sum(int a,int b){
	int result=a+b;
	return result;//return 关键字会返回调用者需要的结果。函数中一旦执行到了return关键字则立刻返回结果
}
注意:定义在函数内部的变量,叫做局部变量,作用域只在当前函数中有效,
在Java中没有全局变量,main函数中的变量也是局部变量,只是比较特殊,作用域还是main函数本身,
但是生命周期比较长。

五、函数重载

函数重载(overload):
至少两个或者多个函数,函数名称相同,但是参数的个数或者参数类型不同,
从而在调用的时候,可以通过传参确定要调用的函数
函数重载本质是对功能的扩展,不是代码的复用!!!
public class functionDemo5 {
    public static void main(String[] args) {

    }

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

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

六、函数递归(recursion)

递归:函数自身调用自身
如果要使用递归,必须要有终止条件,没有终止条件的递归就是死循环

案例:使用递归求100的累加和

public class RecusionDemo {
    public static void main(String[] args) {
        System.out.println(sum(100));
    }
    public static int sum(int n){
        if (n==0){
            return 0;
        }
        return  n+sum(n-1);
    }
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

二十冶一生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值