数组的初始化方式总共有三种:静态初始化、动态初始化、默认初始化。

静态初始化

除了用new关键字来产生数组以外,还可以直接在定义数组的同时就为数组元素分配空间并赋值。
eg:
int[] arr = {12,23,45};
int[] arr = new int[]{12,23,45};
注意:
1.new int[3]{12,23,45};—>错误
2.int[] arr ;
arr = {12,23,45}; —->错误

静态初始化

除了用new关键字来产生数组以外,还可以直接在定义数组的同时就为数组元素分配空间并赋值。

eg:
int[] arr = {12,23,45};
int[] arr = new int[]{12,23,45};
注意:
1.new int[3]{12,23,45};—>错误
2.int[] arr ;
arr = {12,23,45}; —->错误

默认初始化

数组是引用类型,它的元素相当于类的实例变量,因此数组一经分配空间,其中的每个元素也被按照实例变量同样的方式被隐式初始化。

int[] arr = new int[3]; —-> 数组有默认的初始化值
image.png
image.png

比较最值

image.png

数组的特点

  1. 数组一旦指定了长度,那么长度就被确定了,不可以更改。

int[] arr = new int[6];

  1. 数组一旦声明了类型以后,数组中只能存放这个类型的数据。数组中只能存放同一种类型的数据。

int[] arr,String[] s,double[] d…..

数组的缺点

  1. 数组一旦指定了长度,那么长度就被确定了,不可以更改。
  2. 删除,增加元素 效率低。
  3. 数组中实际元素的数量是没有办法获取的,没有提供对应的方法或者属性来获取
  4. 数组存储:有序,可重复 ,对于无序的,不可重复的数组不能满足要求。