**数组**
特点:
1、数组是存储在连续内存块中的元素集合
2、一个数组中只能放相同的数据类型
3、第一个元素的索引为0
数组的创建:
在Java中,创建数组有两个步骤:
声明一个对数组的引用;
使用new关键字初始化数组,并指定数组的大小。
声明时:
数据类型+[ ]+名字(一维)
数据类型+[ ][ ]+名字(二维)
在Java中,创建数组有两个步骤:
声明一个对数组的引用;
使用new关键字初始化数组,并指定数组的大小。
访问数组:
数组中的元素通过用对该数组的一个引用、一个用于描述我们要访问数组哪一个元素的整型索引值来访问。数组的第一个元素的索引为0,第二元素的索引为1,依此类推。
如:
int [ ] sums = new int[20];
sums[0] = 1;
sums[1] = 2;
sums[19] = 191;
或者:
sums[0] = 1;
for(int i = 1; i < 20; i++){
sums[i] = sums[i-1] + i;
}
数组的声明方式,跟其他引用数据类型声明变量一模一样。
数组的特点:
1、 数组中间只能存放相同类型的数据
2、 数组定义好之后,内存中元素的存放是连续的
3、 数组的大小,需要在定义的时候,就固定好,一旦确定,将无法再次修改
数组初始化
在Java中,我们可以用一条语句声明一个数组引用,实例化一个数组,并且填充数组元素。这个过程称为数组初始化,它对创建一个包含已知数据的小数组是很有用的。
数组初始化程序在创建数组时,不需要使用new关键字。数组中的元素使用大括号列出,元素和元素之间用逗号分隔开。
如:
int [] odds = {1, 3, 5, 7, 9};
在定义数组变量时,即给数组声明长度以及确定内容,这种方式在java中,被称为:数组初始化
这种方式,以及需要在底层,先通过new关键字,来创建一个数组,然后使用循环来完成数组赋值
这种方式,适用场景是小数组,内容不多的情况下,推荐大家使用
有引用但是没有名字的对象,取名为匿名对象
数组复制
因为数组的大小是固定的,所以在使用数组时,经常不得不创建一个更大或更小的数组,然后将已存在的数组的内容复制到新的数组中。我们可以编写一个for循环将一个数组的内容复制给另一个,也可以用System类中的静态方法arraycopy()。
arraycopy()方法的签名如下:
public static void arraycopy(Object source, int sourcePos, Object destination, int destinationPos, int length)