Java 中的数组
在JAVA中 有两种数据类型 基本数据类型(int 和 double)和对象类型。
数组是作为对象来处理。
数组的结构特性:
优点:插入快,如果知道下标,可以非常快速的存取
缺点:查找慢、删除慢,大小固定
有序数组:
优点:比无序数组查找快
缺点:删除和插入慢,大小固定
1、创建数组
因为数组是作为对象来处理,所以创建一个数组也用 new 操作符号。
如下:
int [] intArray ;
intArray = new int[10];
或者
int [] intArray = new int[10] ;
2、初始化数组
如果不指定值赋给数组的数据项,那么他们就是0 ,例如我们用如下程序测试
int [] intArray ;
intArray = new int[10];
for(int i = 0 ; i < intArray.length ;i++){
System.out.println(intArray[i]);
}
打印结果 是 10 个0 ;
我们可以通过指定下表的方式初始化,如
intArray[0] = 2 ;
intArray[1] = 2 ;
intArray[2] = 3 ;
数组还有有个极为简单的初始化方式,在你确定这个数组要装哪些数据的时候可以以如下方式:
int [] intArray ={1,2,3,4,5} ;
这个语句的意思就是 创建一个 5个长度的int 数组,按照下表 0,1,2,3,4分别赋值为 1,2,3,4,5
相当于:
int [] intArray = new int[5];
intArray[0] = 1 ;
intArray[1] = 2 ;
intArray[2] = 3 ;
...
3、访问数组
访问数组通过直接指定数组下标来访问。
如:
赋值
intArray[0] = 1 ;
int i = intArray[2] ;
4、数组的增删改查
下面的程序简单的定义了数组的增删改查。
package test.array;
public class TestArray {
public static void main(String[] args) {
int intArray[] = new int[5];
//数组初始化
intArray[0] = 5 ;
intArray[1] = 6 ;
intArray[2] = 7 ;
intArray[3] = 8 ;
intArray[4] = 9 ;
//
int length = intArray.length;
//数组遍历
for(int i = 0 ;i <length; i++){
System.out.println(intArray[i]);
}
//数组查询
int searchKey = 8 ;
for(int j = 0 ;j <length; j++){
if( searchKey == intArray[j])
System.out.println("key = " + searchKey +"\tindex = "+j);
}
//数组的修改
intArray[2] = 70 ;
//数组删除:删除掉 int[?] = 8 的删除
for(int k = 0 ;k <length; k++){
if( searchKey == intArray[k]){
for( ; k <length -1 ; k++){
intArray[k] = intArray[k+1] ;
}
length -- ;
}
}
//删除后遍历
for(int i = 0 ;i <length; i++){
System.out.println(intArray[i]);
}
}
}
5、注意事项:
1)数组的开始下标为0
2)length是数组的属性,不是数组的方法
附件是 测试程序 TestArray.java