一维数组
一维数组基本定义
声明方法:
elementType[] arrayRefVar; 元素类型[] 数组引用变量;
例如int[] firstList;
创建数组:
arrayRefVar=new elementType[sizeOfArray];
申明和创建可以同时进行
例如
int[] myList=new int[10];
赋值
myList[index]=6;
数组引用变量仅仅存储了指向数组的地址,而并没有指向。
数组创建之后的默认数值为,数值类型为0.char型为“\u0000",Boolean型为false。
- 数组初始化:int[] myList={1,2,3,4};该语句等于初始化一个4元素数组,且已经被赋值。
- 数组输出:对于数值型数组,需要使用循环来输出其元素,而对于char型的数组来说,可以直接使用System.out.print(charList);
- foreach循环:一种简化的for循环,代表对每一个元素循环一次,不需要每个元素的下标。
例子:for(double e **?*arrayRefVar){
System.out.print(e);
}
数组复制
直接使用=复制只会把引用地址复制。
- 使用arraycopy来复制数组(位于java.lang.System)。
- System.arraycopy(sourceArray,srcPos,targetArray,tarPos,length);
后面会提到clone 方法来实现数组的复制
可变长参数列表
申明方法
方法名(数值类型… 参数名);
比如
showData(double… numbers);
可变长参数列表必须在参数列表的最后面。
数组查找:二分法查找:先行对数组进行排序,之后与其中间值进行比较,
arrays类用法
排序(在后续java的数据结构会复习到)
sort排序 parallelSort排序
然后使用binarySearch查找,
命令行参数
java TestMain arg0 arg1 arg2
多位数组
声明方法
数据类型[][] 数组名字;
数组名字= new 数据类型[][];
同样可以像一维数组一步声明;
食用方法
- 长度获取,
通过arrayName[x].length;来获取每行的长度
通过arrayName.length来获取每列的长度