方法的概述及基本使用
方法定义格式及格式解释
- 方法的概述
简单的说:方法就是完成特定功能的代码块
在很多语言里面都有函数的定义 , 函数在Java中被称为方法 - 方法格式
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) {
函数体;
return 返回值;
} - 方法格式解释
修饰符:修饰符是用于限定类型以及类型成员的声明的一种符号
返回值类型:用于限定方法执行结果的类型
方法名:就是方法的名字
参数类型:在方法上定义的成为形式参数,参数类型就是规定参数的类型
参数名:参数的名字
函数体:方法内需要执行的语句
返回值:需要与返回值类型的类型一致,函数体执行结束后得到的结果 - 定义方法注意事项:
1.确定方法的返回值类型
2.确定有几个形式参数并且他们的数据类型是什么 - 有明确返回值的方法调用的几种方式:
1.单独调用:没有任何意义
2.输出调用:不合适,如果不需要输出返回值
3.赋值调用:合适,推荐使用
// 举例(这是一个求两个数之和的方法):
/**
* 首先确定方法时候有返回值,因为用于计算两数之和,所以需要得到结果,并且结果为整型int
* 因为用于计算量数之和,所以需要两个形式参数,并且形式参数的数据类型都是整型int
*/
public int sum(int a, int b) {
int sum = a + b;
return sum;
}
public void main(String[] args){
// 单独调用---无意义
sum(10, 20);
// 输出调用---如果不打印结果则没有必要
System.out.println(sum(10, 20));
// 赋值调用---推荐使用,赋值之后,可通过sum变量在进行其他运算操作
int sum = sum(10, 20);
}
- 求和方法的调用图解
- void修饰的方法的调用
void修饰的方法只能单独调用
没有明确返回值的函数调用:
public void print() {
System.out.println("我是void修饰的方法");
}
public void main(String[] args) {
print(); // 输出结果为-----我是void修饰的方法
}
方法的重载及参数传递
方法重载的概述和基本使用
- 重载的概述:
在同一个类中,有多个同名的方法,但是他们的参数类型或参数个数不同,于返回值无关 - 方法重载特点:
与返回值类型无关,只看方法名和参数列表
在调用时,虚拟机通过参数列表的不同来区分同名方法
方法中参数传递
- 方法的形式参数为基本数据类型
方法的参数是基本类型的时候:
形式参数的改变不影响实际参数。
形式参数:用于接收实际数据的变量
实际参数:实际参与运算的变量 - 方法的形式参数是基本类型图解
栈的特点:先入后出! - 方法的形式参数为引用数据类型
方法的参数是引用类型:
形式参数的改变直接影响实际参数,因为形式参数是在堆内存中有地址值的,形式参数是通过地址值找到对应的地址,直接修改 - 方法的形式参数是引用类型图
方法的操作数组的练习
方法操作数组练习
- 需求:把遍历数组改进为方法实现,并调用方法
package com.bsw;
/*
* 需求:把遍历数组改进为方法实现,并调用方法
*/
public class MethodTest {
public static void main(String[] args) {
// 定义数组
int[] arr = { 11, 22, 33, 44, 55 };
// 遍历
// for (int x = 0; x < arr.length; x++) {
// System.out.println(arr[x]);
// }
//用方法改进
//printArray(arr);
//这一次虽然可以,但是我觉得格式不好看,能不能打印成下面的格式呢?
//[元素1, 元素2, 元素3, ...]
printArray(arr);
}
public static void printArray(int[] arr) {
System.out.print("[");
for(int x=0; x<arr.length; x++){
if(x==arr.length-1){
System.out.println(arr[x]+"]");
}else {
System.out.print(arr[x]+", ");
}
}
}
/*
* 两个明确:
* 返回值类型:void
* 参数列表:int[] arr
*/
// public static void printArray(int[] arr) {
// for(int x=0; x<arr.length; x++){
// System.out.println(arr[x]);
// }
// }
}
java基础知识1——数据类型
java基础知识2——运算符
java基础知识3——流程控制语句
java基础知识4——数组
java基础知识5——方法
java基础知识6——面向对象
java基础知识7——String&StringBuilder
java基础知识8——ArrayList集合
java基础知识9——IO