(一)数组的定义格式
格式一:int[ ] arr 格式二:int arr[]
(二)数组初始化
动态初始化:初始化时只指定数组长度,由系统为数组分配初始值
int[] arr=new int[length];
int[][] arr=new int[length1][length2]; //二维数组
静态初始化:初始化时指定每个数组元素的初始值,由系统决定数组长度
int[] arr=new int[]{1,2,3...};
int[] arr={1,2,3...}; //简写
(三)数组元素访问
数组变量访问直接访问数组名
arr;
访问数组内部的存储的数据
arr[i];
格式:数组名[索引]
索引是数组中数据的编号方式
作用:索引用于访问数组中的数据使用,数组名[索引]等同于变量名,是一种特殊的变量名;
特征:索引从0开始;索引是连续的;索引逐一增加,每次加1。
(四)内存分配
Java 程序在运行时,需要在内存中分配空间。为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式。
栈内存:存储局部变量定义在方法中的变量,例如:arr使用完毕,立即消失
堆内存:存储new出来的内容(实体,对象)数组在初始化时,会为存储空间添加默认值
整数 | 0 |
浮点数 | 0.0 |
布尔 | false |
字符 | '\u0000' |
引用 | null |
每一个new出来的东西都有一个地址值使用完毕,会在垃圾回收器空闲时被回收。
(五)实践案例
创建一个char类型的36个元素的数组,前26个元素放置'A'-'Z', 后10个元素放置'0'-'9'。
使用for循环访问所有元素并打印出来。
public static void main(String[] args) {
char[] arr=new char[36]; //创建数组
char a='A',b='0'; //定义字符a,b
for(int i=0;i<26;i++) //将'A'到'Z'输入到数组中
{
arr[i]=a;
a+=1;
}
for(int i=26;i<36;i++) //将'0'到'9'输入到数组中
{
arr[i]=b;
b+=1;
}
for(int i=0;i<36;i++) //循环打印数组中的内容
{
System.out.print(arr[i]+" ");
}
}