2020.6.14 10:17
数组
- 数组:存储数据长度固定的容器,存储多个数据类型一致的数据。
- 定义格式:一、数据类型[] 数组名; int[] arr; 二、数据类型 数组名[]; int arr[];
- 数组动态初始化:只给定数组的长度,由系统给出默认初始化值。
- 动态初始化格式:数据类型[] 数组名 = new 数据类型[数据长度];int[] array = new int[3]; new代表为数组开辟新的内存空间。
- 静态初始化:完整----->数据类型[] 数组名 = new 数据类型[]{元素1,元素2,…} 简化---->数据类型[] 数组名 = {元素1,元素2,…} int[] arr={1,2,3,4}
- 数组元素的访问:一、索引:每个存储到数组的元素都会有自动的编号,从0开始,这个自动编号就是数组的索引,通过索引能够找到该数组的元素。
- 访问数据元素的格式:数组名[索引] 例如: arr[1];
- 数组遍历:索引是从0到length-1,作为循环条件
- 数组操作的问题:数组下标越界异常【将错误的索引修改为正确的索引范围即可】+空指针异常【给数组一个真正的堆内存空间引用即可】
内存分配概述
内存是计算机中重要的组件,临时存储区域,作用是运行程序。我们编写的程序是放在硬盘上的,但是它是不会被运行的,必须放在内存中才能够运行,运行完会清空内存。
Java虚拟机要对运行的程序进行内存空间分配和管理。
Java中的内存分配
栈内存 和 堆内存
方法区:存储可以运行的class文件。
堆内存:存储对象或数组,通过new来创建的,都存放在堆中。
方法栈:方法运行时使用的内存,例如:main方法运行则是进行方法栈中执行。