方法
方法是一种语法结构,它可以把一段代码封装成一个功能,以便重复调用。
修饰符(Modifier)是一种关键字,用于修饰类、方法、变量等各种程序元 素的声明。Java中常用的修饰符包括以下几种:
-
访问修饰符:用于控制程序元素的访问权限,包括public、protected、 private和默认(不写任何修饰符)四种。
-
非访问修饰符:用于控制程序元素的行为,包括static、final、abstract、 synchronized、volatile等。
-
其他修饰符:包括transient、native、strictfp等
使用方法的好处:
提高代码的复用性,提高了开发率
让程序的逻辑更清晰
格式
修饰符 返回值类型 方法名( 形参列表 ){
方法体
return 返回值;
用void修饰:方法可以没有返回值
若不用void,必须含有return 语句
}
方法调用:
直接调用:方法名(参数);
赋值调用:数据类型 变量名 = 方法名(参数);
输出调用:System.out.println(方法名(参数));
例题:
将main里的arr的地址赋值给Insert中的arr,若Insert中的arr改变,原数据也会改变
将main里a的值赋给addNum中的a,若addNum中的a改变,原数据a不变
public static void Insert(int[] arr){
arr[2] = 99;
}
public static int addNum(int a){
a += 10;
return a;
}
public static void main(String[] args) {
int[] arr = {1,2,3,4,5};
Insert(arr);
for (int i : arr) {
System.out.print(i + " "); //1 2 99 4 5
}
System.out.println();
int a = 20;
System.out.println(a); //20
System.out.println(addNum(a)); //30
}
递归:
方法或函数在执行过程中自己调用自己
方法内部调用方法自己的过程称为递推。
满足方法内部不在调用方法本身的条件称为递归的终止条件。
方法内部返回到上一次调用的过程称为回推。
public static void main(String[] args) {
//编写一个方法,接受一个正整数作为参数,并返回它的阶乘
System.out.println(sum(5));
}
public static int sum(int n){
if(n == 1 || n == 0){ //终止条件
return 1; //回推
}else{
return n * sum(n-1); //递推
}
}
可变长度参数:
可变参数本质上是一个数组
作用:在形参中接收多个数据
格式:数据类型...参数名
注:
形参列表中可变参数只能有一个,可变参数必须在形参最后面
public static void sum(int a,int...num){
}
public static void num(int...a,int b){//报错
}
在方法重载时,数组和可变参数不能定义在两个方法中,当可以定义在同一个方法
方法重载:
一个类中,方法的名字相同,方法的参数不同(参数的个数、类型)
方法重载的调用,注意实参与形参一一匹配的规则调用