Java数组

数组的特点:

  • 数组本身是引用数据类型,而数组中的元素可以是任何数据类型,包括基本数据类型和引用数据类型。

  • 创建数组对象会在内存中开辟一整块连续的空间。占据的空间的大小,取决于数组的长度和数组中元素的类型。

  • 数组中的元素在内存中是依次紧密排列的,有序的。

  • 数组,一旦初始化完成,其长度就是确定的。数组的长度一旦确定,就不能修改

  • 我们可以直接通过下标(或索引)的方式调用指定位置的元素,速度很快。

  • 数组名中引用的是这块连续空间的首地址

数组的声明:

(1)数组的维度:在Java中数组的符号是[],[]表示一维,[][]表示二维。

(2)数组的元素类型:即创建的数组容器可以存储什么数据类型的数据。元素的类型可以是任意的Java的数据类型。例如:int、String等。

注意:Java语言中声明数组不能指定其长度(数组中元素的个数)。 例如: int a[5]; 

数组的初始化

静态初始化
  • 如果数组 变量的初始化 和 数组元素的赋值操作 同时进行,那就称为静态初始化。

  • 静态初始化,本质是用静态数据(编译时已知)为数组初始化。此时数组的长度由静态数据的个数决定

  • 静态初始化的两种格式 

数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3,...};

数据类型[] 数组名 = {元素1,元素2,元素3...};//必须在一个语句中完成,不能分成两个语句写

动态初始化

数组变量的初始化和数组元素的赋值操作分开进行,即为动态初始化。

数据类型[] 数组名字 = new 数据类型[长度];

10.5

数组的常见算法

1.    [a,b]范围内的随机 整数: (int)(Math.random() * (b - a + 1)) + a

2.    数组的复制

 1.  System.arraycopy 方法

         System.arraycopy() 是一种快速复制数组的方法,它允许指定源数组、源数组开始位置、目标数组、目标数组开始位置 以及要复制的元素数量。

int[] source = {1, 2, 3, 4, 5};
int[] dest = new int[source.length];

System.arraycopy(source, 0, dest, 0, source.length);

2.Arrays.copyOf 方法

int[] source = {1, 2, 3, 4, 5};
int[] dest = Arrays.copyOf(source, source.length);

3.

你可能感兴趣的:(开发语言,java)