数组定义的两种格式
(1)int[] arr; 读作:定义了一个int类型的数组,数组变量名为arr。 此种定义方法更为清晰,推荐使用。
(2)int arr[]; 读作:定义了一个int类型的变量,变量名为arr数组。
数组初始化方式
动态初始化:
初始化时只指定数组长度,由系统为数组分配初始值
格式:数据类型[] 变量名 = new 数据类型[数组长度] int[] arr = new int[3];
数组在初始化时,华为存储空间添加默认值。
整数:默认0 浮点数:默认0.0 布尔值:默认false 字符:默认空字符 引用数据类型:默认值是null
静态初始化:
初始化时指定每个数组元素的初始值,由系统决定数组长度。
格式:数据类型[] 变量名 = new 数据类型[]{数据1,数据2,……} 简化格式:数据类型[] 变量名 = {数据1,数据2,……}
数组最大的优点就是效率高,可以支持随机访问。但是,缺点就是数组对象的大小被固定。
优点:
1.通过下标访问元素的效率很高,指定下标为n的元素的地址:首地址*元素类型字节数
2.数组可以保存若干个元素的值。
缺点:
1.数组长度是固定的不能变的;
2.数组进行元素的删除和插入操作的时候,效率比较低。需要移动大量的元素
3.数组元素的类型只能是一种
4.数组通过内容查找元素的效率比较低的。
5.数组的元素是连续分配的,所以在heap内存中必须找到连续的内存空间才能容纳数组的所有数据。对内存要求高一些;
6.数组没有提供任何的封装,所有对元素的操作,都是通过自定义的方法实现的,对数组元素的操作比较麻烦;
java提供了一整套用于管理对象的容器,集合框架 collection framework;
Arrays 工具类:专门用来处理数组的工具类 java.util.Arrays
网友评论