Java函数使用教程-让你快速上手Java函数
在Java中,函数是一种非常重要的编程结构。函数在程序中可以被重复利用,可读性好,提高了代码的模块化和可维护性。本文将为大家介绍Java函数的基本使用方法,帮助读者快速上手Java函数。
1.函数的定义
Java中定义函数的格式如下:
public 返回类型 函数名(参数列表){
方法体;
return 返回值;
}
其中,函数定义由关键字public用来表示访问范围,返回类型表示函数返回值的类型,函数名是函数的名称,参数列表是函数调用时需要传递给函数的参数,函数体是为了实现函数功能而需要执行的语句,返回值表示函数执行完毕后返回的值。
例如:
public int add(int a,int b){
int sum;
sum = a+b;
return sum;
}
以上函数是一个加法函数,其返回值为两个整数的和。
2.函数的调用
函数定义好之后,需要通过函数调用来调用执行。函数调用的格式如下:
返回值类型 变量名 = 函数名(参数列表);
其中,返回值类型表示函数返回值的类型,变量名是储存函数返回值的变量名,函数名是函数的名称,参数列表是函数调用时需要传递给函数的参数。
例如:
int x = add(3,5);
以上代码就是对add函数的调用,function(3,5)的返回值是8,将这个值存储在变量x中。
3.函数的重载
Java中可以定义两个或者多个同名但是参数不同的函数,这种情况叫做函数的重载。Java编译器在函数调用时会根据传递参数的类型和数量来判断调用哪个函数。
例如:
public int max(int a,int b){
return a>b?a:b;
}
public double max(double a,double b){
return a>b?a:b;
}
以上定义了两个同名但是参数类型不同的max函数,分别求两个整数和两个双精度浮点数的最大值。当调用max函数的时候,Java编译器会根据传递参数的类型和数量自动调用相应的函数。
4.函数参数传递
函数调用时需要传递参数,Java中参数传递的方式分为传值和传址两种。
当参数为基本数值类型时,采用传值的方式传递参数,也就是说函数内部操作的是参数的拷贝,不会影响原变量的值。
例如:
public void swap(int a,int b){
int temp = a;
a = b;
b = temp;
}
int x = 3;
int y = 5;
swap(x,y);
System.out.println("x="+ x + "y=" + y);
以上代码定义了一个swap函数,交换传入的两个整数的值。但是在函数调用之后,输出的x和y的值仍然是3和5,证明函数内部对参数的修改并没有影响到原变量的值。
当参数为引用类型时,采用传址的方式传递参数,也就是说函数内部操作的是参数的地址,会影响原变量的值。
例如:
public void add(int[] arr){
arr[0]++;
arr[1]++;
arr[2]++;
}
int[] array = {1,2,3};
add(array);
System.out.println(Arrays.toString(array));
以上代码定义了一个add函数,将传入的整型数组的前三个元素都加一。当函数调用之后,输出的数组的值变成了[2,3,4],证明函数内部对数组的修改影响到了原变量的值。
5.函数的内部类
Java中函数定义的内部类称为局部类,局部类的语法形式与类定义一样,只能在所属函数内部被访问和引用。当然,可以在内部类中定义内部类,内部类的内部类被称为内嵌类。
例如:
public class Person{
public void speak(){
class Voice{
String say(){
return "Hello";
}
}
Voice v = new Voice();
System.out.println(v.say());
}
}
以上定义了一个Person类,里面有一个speak方法,这个方法中定义了一个局部类Voice,Voice内部定义了一个say方法,输出Hello,并将say的返回值输出。
6.结语
Java函数是非常重要的程序结构,本文详细介绍了Java函数的定义、调用、重载、参数传递和内部类。相信在本文的帮助下,读者已经可以快速上手Java函数。
