一、JavaSE数组
数组可分为一维数组和二维数组数组存在的意义:数组是存储多个变量的容器,这多个变量的数据类型要一致。
数组定义格式:
格式一:数据类型【】 数组名;例如 int 【】 arr={}
格式二:数据类型 数组名【】; 例如 int arr【】={}
推荐使用格式一
二、数组的初始化
java中的数组必须先初始化,之后才能使用。初始化指的是为数组中的数组元素分配内存空间,并为每个元素赋值。
1.数组初始化的分类
(1)动态初始化:只指定长度,由系统给出初始化值
例如:int【】 arr=new int【3】;
(2)静态初始化:给出初始化值,由系统决定长度。
例如:int【】 arr={1,2,3}
系统会自动决定长度
2.java中的内存分配及栈和堆的理解
栈:存放的是局部变量,在方法定义中或者方法声明上的变量都是局部变量。
堆:存放的是所有new出来的东西,每一个new出来的东西都会为其分配一个地址值,每一个变量都有一个默认的值,使用完毕就变为垃圾等待回收
3.数组的遍历
代码如下(示例):
//指的是依次输出数组中的每一个元素
//例如在程序的最后面加上:
for(int i=0;i<arr.length;i++){
System.out.println(arr[i]);
}
4.数组获取最值
代码如下(示例):
public static void main(String[] args) {
int[] arr={1,2,3};
int max=getmax(arr); //这一步调用方法
System.out.println(max);
}
public static int getmax(int[] arr) {
int max=arr[0];
for(int i=0;i<arr.length;i++){
if(max<arr[i]){ //通过逐个比较选出最大值
max=arr[i];
}
}
return max; //返回最大值
}
三、二维数组
二维数组可以理解为数组中的数组,也就是数组中的每一个元素都是一个新的数组
1. 二维数组的格式
(1)数据类型【】【】 变量名=new 数据类型【m】【n】;
例如 int【】【】arr=new int【m】【n】;m表示这个二维数组有多少个一维数组,必须写上,n表示每个一维数组中的元素个数,可写可不写。
(2)数据类型 数组名【】【】=new 数据类型【m】【n】;
(3)数据类型【】 数组名【】=new 数据类型【m】【n】;
推荐使用格式一。
注意下面定义的区别
int x,y;
int[] x,y[];
区别是:
int[] x,y[];//定义了两个数组 一个是一维数组x 一个是二维数组y
二维数组的举例说明:
int【】【】arr=new int【3】【】;
arr【0】=new int【2】; 这三步是定义一维数组中的元素
arr【1】=new int【4】;
arr【2】=new int【5】;