定义活动地址:CSDN21天学习挑战赛
数组是用于存储一批同种类型数据的内存区域,
*类似于c++的容器Vector。
注释: 在C++中,vector能够存放任意类型的动态数组,能够增加和压缩数据。
(1)可将容器中元素翻转、复制、找到元素值对应的位置;
(2)迭代器可以按照不同的方式遍历容器;
(3)可在容器的末尾增加或删除元素;
(4)可在任意位置插入数据;
与数组相比,容器在自动处理容量的大小时会消耗更多的内存,但能很好的调整存储空间大小。
- 静态初始化
定义时直接给数组赋值:数组类型[] 数组名=new 数据类型[]{元素}
适合用于已知元素值
double[] str=new double[]{1.12,1.21};
//简化格式
//数据类型[] 数组名={元素1,元素2};
double[] str={1.2,2.1};
//也可以写成
double str[]={1.2,2.1};
注释:数组变量名中存储的是数组在内存中的地址,数组是引用类型。
- 数组访问
数组名称[索引]
int arr={12,24,36};
arr[2]=100;
System.out.println(arr[2]);//100
//获取数组长度
System.out.println(arr.length);//3个元素
//最大索引:数组名.length-1(元素个数大于0)
- 动态初始化
适合于已经确定元素类型和数组长度
数组类型[] 数组名=new 数据类型[长度];
int[] arr=new int[3];
默认值:
- 数组遍历
int[] ags={20,30,40,50};
for(int i=0;i
System.out.println(ags[i]);
}
5.Java内存分配
-
方法区
-
栈内存
-
堆内存
-
本地方法栈
-
寄存器
-
数组使用常见问题
(1)访问元素位置超过最大索引 产生ArrayIndexOutOfBoundsException(数组索引越界异常) (2)数组变量中没有存储数组的地址,而是null, 访问时会产生NullPointerException(空指针异常)
-
Debug工具的使用
IDEA自带的断点调试工具
使用步骤:
(1)在需要的代码行左侧,点击一下,形成断点
(2)选择使用Debug方式启动程序,启动程序后在断点暂停
(3)控制代码一行一行向下执行



