方法:就是完成特定动能的代码块
格式:
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) {
函数体/方法体;
return 返回值;
}
方法格式解释
修饰符 比较多,后面会详细介绍。目前public static
返回值类型 用于限定返回值的数据类型
方法名 一个名称,为了方便我们调用方法
参数类型 限定调用方法时传入参数的数据类型
参数名 是一个变量,接收调用方法时传入的参数
方法体 完成功能的代码
return 结束方法以及返回方法指定类型的值
返回值 程序被return带回的结果,返回给调用者
注意:
1.方法不调用不执行 方法与方法是平级关系,不能嵌套定义
2.方法定义的时候参数之间用逗号隔开
3.方法调用的时候不用在传递数据类型
4.如果方法有明确的返回值,一定要有return带回一个值
没有明确返回值的函数调用:
其实就是void类型方法的调用 只能单独调用
方法的重载:
在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可。
2.数组:数组是存储同一种数据类型多个元素的集合。
2.1数组定义的格式:
格式1:数据类型[] 数组名;
格式2:数据类型 数组名[];
3.
数组初始化概述:
Java中的数组必须先初始化,然后才能使用。
所谓初始化:就是为数组中的数组元素分配内存空间,并为每个数组元素赋值。
数组的初始化方式 :
动态初始化:初始化时只指定数组长度,由系统为数组分配初始值。
静态初始化:初始化时指定每个数组元素的初始值,由系统决定数组长度。
动态初始化:
初始化时只指定数组长度,由系统为数组分配初始值。
格式:数据类型[] 数组名 = new 数据类型[数组长度];
数组长度其实就是数组中元素的个数。
eg:
int[] arr = new int[3];
解释:定义了一个int类型的数组,这个数组中可以存放3个int类型的值。
java中的内存分配:
栈: 存储局部变量
堆: 存储new出来的东西
a:局部变量 在方法定义中或者方法声明上定义的变量。
b:栈内存和堆内存的区别
栈:数据使用完毕,就消失。
堆:每一个new出来的东西都有地址
每一个变量都有默认值 byte,short,int,long 0 float,double 0.0 char ‘\u0000‘ boolean false
引用类型 null 数据使用完毕后,在垃圾回收器空闲的时候回收。
静态初始化:初始化时指定每个数组元素的初始值,由系统决定数组长度。
格式: 数据类型[] 数组名 = new 数据类型[]{元素1,元素2,…};
二维数组:
格式1 :数据类型[][] 变量名 = new 数据类型[m][n];
m表示这个二维数组有多少个一维数组 。
n表示每一个一维数组的元素个数。
简化版格式: 数据类型[][] 变量名 = {{元素…},{元素…},{元素…}};
Java中的参数传递问题(只有值传递):
基本类型(传递的是值):形式参数的改变对实际参数没有影响。
引用类型(传递的是地址值):形式参数的改变直接影响实际参数。