数组的概念
数组是一组共用同一名称的、连续存储的、类型相同的变量的集合。
数组的定义
1.声明数组
声明数组就是告诉编译器数组名和数组元素类型,如下两种形式等价:
elementType [ ]arrayName;
elementType arrayName[ ];
elementType表示数组元素类型,arrayName表示数组名称,方括号指明变量为数组变量,既可以放在变量前面也可以放在变量的后面。
2.创建数组
创建数组使用new语句,格式为:
arrayName = new elementType[arraySize];
该语句功能是分配arraySize个elementType类型的存储空间,并通过arrayName来引用。例如:
words = new String[5];
数组的声明可以与创建写在一个语句中。例如:
String [ ]words = new String[5];
3.访问数组元素
元素的使用方式:
arrayName [index]
index为数组元素下标或索引,下标从0开始,到数组的长度减1,数组一经创建大小不能改变。
4.数组初始化器
声明数组同时可以使用初始化器对数组元素初始化,在一对大括号中给出数组的每个元素值。这种方式适合数组元素较少的情况,这种初始化也称为静态初始化。例如:
String [ ] words = new String [ ]{"Taylor"," ","Swift"," 13",};
简单形式为:
String [ ] words = {"Taylor"," ","Swift"," 13",};
5.Arrays类
java.util.Arrays类定义了若干静态方法对数组操作,有数组的排序、元素的查找、数组元素的复制、填充数组元素和数组的比较,下面使用Arrays的equals()方法来举例说明:
package com.demo;
import java.util.*;
public class Text {
public static void main(String[] args) {
int []a= {1,2,3};
int []b= {1,2,3};
System.out.println(Arrays.equals(a,b));//输出true
b[2] = 4;
System.out.println(Arrays.equals(a,b));//输出false
}
}
使用数组对象的equals()方法用来比较两个引用是否相同,而使用Arrays类的equals()方法用来比较两个数组对应元素是否相同。注意使用Arrays类的equals()方法,要求被比较的两个数组数据类型且元素个数相同,才能比较对应元素是否相同,这是使用Arrays类的equals()方法的前提条件。