- 容器:是将多个数据存储到一起,每个数据成为该容器的元素
数组就是存储数据长度固定的容器:保证多个数据的数据类型要一致
1.3数组的定义 1.3.1方式一注意:数组有定长特性,长度一旦指定,不可更改
int[] arr = new int[3];1.3.3方式三
int[] arr = {1,2,3,4,5};
数组的长度属性:每个数组都具有长度,而且是固定的,java中赋予了数组的一个属性,可以获取到数组的长度
语句为数组名.length,属性length的执行结果是数组的长度,int类型结果。由此可以推断出,数组的最大索引值为数组名.length-1
内存是计算机中的重要原件,临时存储区域,作用是运行程序。我们编写的程序是存放在硬盘中的,在硬盘中的程序是不会运行的,必须放进内存中才能进行运行,运行完毕后会清空内存。java虚拟机要运行程序,必须要对内存进行分配和管理
2.2java虚拟机的内存划分为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式
jvm的内存划分
2.3数组在内存中的存储 2.3.1一个数组内存图public static void main(String[] args){
int[] arr = new int[3];
System.out.println(arr);
}
输出的结果是[I@880ec60,这是什么呢?是数组在内存中的地址。new出来的内容,都是在堆内存中存储的,而方法中的变量arr保存的是数组的地址,输出arr[0]就会输出arr保存的内存地址中数组中0索引上的元素
2.3.3两个变量指向一个数组public static void main(String[] args) {
// 定义数组,存储3个元素
int[] arr = new int[3];
//数组索引进行赋值
arr[0] = 5;
arr[1] = 6;
arr[2] = 7;
//输出3个索引上的元素值
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
//定义数组变量arr2,将arr的地址赋值给arr2
int[] arr2 = arr;
arr2[1] = 9;
System.out.println(arr[1]);
}
4.3
方法的参数为基本类型时,传递的是数据值。方法的参数为应用类型时,传递的是地址值。



