Java初探-9.Java 函数介绍

47 阅读3分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第2天,点击查看活动详情

Java 函数,如果需要经常某操作,则类似的代码需要重复写很多遍。比如在数组中查找某个数,第一次查找一个数,第二次可能查找另一个数,每查一个数,类似的代码都需要重写一遍,很冗余。另外,有一些复杂的操作,可能分为很多个步骤,代码难以理解和维护。

程序使用函数这个概念来解决这个问题,即使用函数来减少重复代码和分解复杂操作。

基本概念

函数这个概念,学数学的时候都接触过,其基本格式是y=f(x),表示的是x到y的对应关系,输入x,经过函数变换f,输出y。程序中的函数概念与其类似,也由输入、操作和输出组成,但它表示的是一段子程序,这个子程序有一个名字,表示它的目的(类比f),有零个或多个参数(如x),有可能返回一个结果(类比y)。

public static int sum(int a, int b){
    int sum = a + b;
    return sum;
}
public static void printResult(){
    for(int i=0; i<5; i++){
        System.out.println();
    }
}

第一个函数的名字叫做sum,它目的是对输入的两个数求和,有两个输入参数,分别是int整数a和b,它的操作是对两个数求和,求和结果放在变量sum中(变量sum和函数名sum没有任何关系),然后使用return语句将结果返回。

第二个函数的名字叫 printResult,目的是在屏幕上输出5个空行,它没有输入参数,操作是使用一个循环输出5个空行,没有返回值。

以上代码都比较简单,主要是演示函数的基本语法结构,即:

修饰符 返回值类型  函数名字(参数类型 参数名字,…) {
    操作
    return返回值;
}

函数主要组成部分有以下几种。
1)函数名:表示函数功能。
2)参数:参数有0个到多个,每个参数由参数的数据类型和参数名组成。
3)操作:函数的具体操作代码。
4)返回值:函数可以没有返回值,若没有返回值则类型写成void,如果有则在函数代码中必须使用return语句返回一个值,值的类型需要和声明的返回值类型一致。
5)修饰符:Java中函数有很多修饰符,分别表示不同的目的

以上就是定义函数的语法。定义函数就是定义了一段有着明确功能的程序,但定义函数本身不会执行任何代码,函数要被执行,需要被调用。

Java中,任何函数都需要放在一个类中。暂时可把类看作函数的一个容器,即函数放在类中,类中包括多个函数,Java中的函数一般叫做方法,不特别区分函数和方法,可能会交替使用。一个类里面可以定义多个函数,类里面可以定义一个叫做main的函数,形式如:

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

上面这个函数有特殊的含义,表示程序的主入口,String[] args表示从接收到的参数。Java中运行一个程序的时候,需要指定一个定义main函数的类,Java从main函数开始执行。

刚开始学编程可能会误以为程序从代码的第一行开始执行,这是错误的,不管main函数定义在哪里,Java函数都会先找到它,然后从它的第一行开始执行。