今日主要学习内容——Java中的数组
数组
Java中的数组必须先初始化,然后才能使用
所谓初始化:就是为数组中的元素分配内存空间,并为每个数组元素赋值。
动态初始化:初始化时只指定数组长度,并由系统为数组分配初始值。
格式:数组类型【】变量名 = new 数组类型 【数组长度】int [] arr = new int[3]
数组变量访问方式 格式:数组名
数组元素访问方式 格式:变量名 【索引】
Java程序中的内存分配:Java程序在运行时,需要在内存中分配空间。为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式。
int [] arr=new int[3];
/*左边 int 说明数组中元素的数据类型
[] 说明是一个数组
arr是数组的名称
右边:
new 为数组申请内存空间
[] 说明是一个数组
3是数组的长度
*/
System.out.println(arr);
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
数组在初始化时,会为存储空间添加默认值
整数:默认值0,浮点数:默认值0.0 ,布尔值:默认值false 字符:默认值是空字符,引用数据类型:默认值是null。
栈内存:存储局部变量 定义在方法中的局部变量,例如数组名arr,使用完毕立即消失。
堆内存:存储new出来的内容(实体,对象)数组在初始化时,会为存储空间添加默认值 整数:0, 浮点数:默认值0.0 ,布尔值:默认值false 字符:默认值是空字符,引用数据类型:默认值是null。每一个new出来的东西都有一个地址值,使用完毕后会被回收
静态初始化:初始化时指定每一个数组元素的初始值,有系统决定数组长度。
格式:数据类型【】变量名=new 数据类型 【】{数据1,数据2,数据3…};
范例:int [] arr=new []{1,2,3} 简化格式:int [] arr={1,2,3};
今日所遇问题——对栈空间和对堆空间的理解
问题解决:浏览CSDN文章解决。