一、数组的概念
- 一维数组的声明:type var[] 或 type[] var
- 数组是引用类型(引用类型:两块内存,小内存指向大内存,大内存在堆上)
- java 语言中声明数组时不能指定其长度(数组中元素的个数),例如:int a[5] // 非法
- Java中使用关键字 new 创建数组对象 (int[] s; s = new int[5])
- 内存分析:
- 数组中的元素 类型为内置类型:
- 数组中的元素 类型为引用类型:每一个数组元素都需要实例化(new)
二、数组初始化
- 动态初始化:数组定义 与 为数组元素分配空间(new)和赋值的操作 分开进行
- 静态初始化:在定义数组的同时就为数组元素分配空间并赋值
1.数组元素的默认初始化
数组是引用类型,他的元素相当于类的成员变量,因此数组分配空间后,每个元素也按照成员变量的规则被隐式初始化
2.数组元素的引用
- 定义并用运算符new为之分配空间后,才可以引用数组中的每个元素,数组元素的引用方式为:arrayName[index]:index为数组元素的下标,可以是整型常量或整形表达式
- 每个数组都有一个属性length指明它的长度:a.length 指明a数组的长度
jdk中提供将基础类型包装成一个一个相对应的类:Boolean Integer Double......
parseDouble() 方法是接受一个字符串类型为参数,转换为double基础类型,是静态方法,可以直接由Double类调用
三、二维数组
技巧:无论是静态初始化,还是动态初始化,定义的数组的中括号内不写任何数字;静态初始化由Java自动识别那个维度,动态初始化的维度在new中标识。
四、数组的拷贝
从src向dest拷贝,会指向同一块内存,当dest改变元素的值时,src的元素值会跟着改变!!