方法的概念:
简单的说方法就是完成特定功能的代码块
使用方法的好处:
降低程序的冗余度 , 便于后期维护 , 提高封装性
方法的定义格式
修饰符 返回值类型 方法名(数据类型 参数名1,数据类型 参数名2,...){
方法体
return 结果值;
}
修饰符: public static
返回值类型: 如果方法执行完毕需要给调用者返回数据, 那数据的类型就是返回值类型 ,如果这个方法执行完毕,不需要给调用者返回数据, 则使用void关键字占位
方法名: 标识符 可以通过方法名来使用方法
参数列表:用来接收调用者传递过来的数据,写法类似于定义变量, 可以有0个或者是n个参数项
方法体:
实现特定功能的代码
return: 关键字, 作用是结束当前的方法, 并把结果值返回给调用者 ,如果这个方法执行完毕 不需要给调用者返回什么数据,return可以省略
需求: 定义一个方法 可以接受两个整型的数据, 求这两个整型数据的和, 并把这个和返回给调用者
两个方面
参数列表: int a, int b, 外界给方法传递什么数据, 就定义什么类型的变量接收
返回值类型: int , 方法执行完毕给调用者返回数据的数据类型
方法定义完毕之后, 如果没有调用永远不会执行
调用方法的格式:
方法名(参数列表);
实际参数: 出现在方法的调用时 ,代表了要给方法穿的数据 简称 实参
形式参数: 出现在方法的定义时 , 用来接收传递过来的数据 简称 形参
void:当一个方法执行完毕, 不需要给调用者返回数据的时候,使用void占位
方法的重载
在Java中允许出现多个同名的方法 , 但是 要求方法的参数个数或者是参数的类型必须不同
好处: 方法名字记忆变的简单, 系统底层会自动调用对应类型的方法
判断重载:
先看方法名, 只有方法名相同的时候, 才有可能是重载
看参数, 参数的个数不同的时候 一定是重载
看类型, 如果方法名相同,参数个数也相同,但是类型不同那必然是重载 ,(对应位置的类型)
重载跟参数的名字无关
重载跟返回值类型无关
数据类型作为参数传递
基本数据类型作为参数传递的时候 , 是值传递 ,在方法中修改本身参数值, 对原值没有影响 核心操作的数据在两片空间 (String 也符合这一条)
引用类型作为方法的参数传递的,是地址传递, 传递的是数据所在位置的地址编号,如果在方法中根据地址编号操作了同一片数据, 那么在原方法中
可以看到修改之后的结果 。
定义方法,完成数组遍历
1 /* 2 * int[] arr = {10,20,30,40,50} 3 * 4 * 在方法的内部 打印元素 按照 [10,20,30,40,50] 5 */ 6 public static void show(int[] arr) { 7 System.out.print("["); 8 for (int i = 0; i < arr.length; i++) { 9 10 if (i != arr.length - 1) { 11 System.out.print(arr[i] + ","); 12 } else { 13 System.out.println(arr[i] + "]"); 14 } 15 16 } 17 }