上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
细节15 简单高效——使用Arrays类操作数组
数组是程序中经常处理的对象,通常的方法是使用循环语句操作数组,从JDK 1.2开始,Java API提供了Arrays类,可以方便地操作数组,Arrays类在java. util包中,该类提供的许多重载的方法,可以方便地操作数组,Arrays类的常用方法如表5.6所示。
表5.6 Arrays类的常用方法及含义
使用copyOf ()方法复制数组的示例:
String arr1[] = { "aaa", "bbb", "ccc", "ddd", "eee" }; // 定义数组arr1,并为其指定初始值 String arr2[] = Arrays. copyOf (arr1, 3); // 复制数组arr1,使arr2具有arr1的前3个元素 for (int i = 0; i < arr2. length; i++) { System. out. println (arr2[i]); // 输出数组arr2的元素值 }
运行本示例,程序将输出aaa、bbb和ccc,共3个元素,这说明使用Arrays类的copyOf ()方法成功地将数组arr1中的前3个元素复制到数组arr2中了。
说明
Arrays类的copyOf ()方法的第一个参数是要对其进行复制的数组,第二个参数是指复制第一个参数指定数组中的多少个元素,复制时是从数组的第一个元素开始的。
使用copyOfRange ()方法复制数组中指定范围内元素的示例:
String arr1[] = { "aaa", "bbb", "ccc", "ddd", "eee" }; // 定义数组arr1,并为其指定初始值 String arr2[] = Arrays. copyOfRange (arr1, 1, 3); // 将数组arr1中索引值是1~3的元素复制到数组arr2中 for (int i = 0; i < arr2. length; i++) { System. out. println (arr2[i]); //输出数组arr2的元素值 }
运行本示例,程序将输出bbb和ccc两个元素,这说明使用Arrays类的copyOfRange ()方法成功地将数组arr1中指定范围,即数组arr1中索引值是1(包含)~3(不包含)的元素复制到数组arr2中了。
注意
在使用Arrays类的copyOfRange ()方法复制数组时,复制的元素包含第二个参数指定索引位置处的元素值,但是不包含第三个参数指定索引位置处的元素值。
使用sort ()方法排序数组中元素的示例:
int value[] = new int[] { 50, 20, 40, 10, 30}; // 定义数组,并为其指定初始值 Arrays. sort (value); // 对数组中的元素按升序排序 for (int i = 0; i < value. length; i++) { System. out. println (value[i]); // 输出排序后的数组元素 }
运行本示例,程序将按顺序输出10、20、30、40和50这5个元素,这说明使用Arrays类的sort ()方法成功地对数组value中的元素进行了升序排列。