数组的拷贝
System.arraycopy(object src,int srcpos,obiect dest,int destpos,int length)
该方法可以将src数组里的元素赋给dest数组的元素,其中srcpos指定从src数组的第几个元素开始赋值,length参数指定将src数组的元素的多少个元素赋给dest数组的元素
scr-源数组
scrPos-源数组中的起始位置 dest-目标数组 destPos-目标数组中的起始位置 length-要复制的数组元素的数量
例:
package com.gaobo.testshuzu;
public class Test04 {
public static void main(String[] args) {
String [] s = {"阿里","百度","网易","京东","尚学堂"};
String [] sBak = new String[6];
System.arraycopy(s,0,sBak,0,s.length);
for (int i = 0;i < sBak.length;i++){
System.out.println(sBak[i]+"\t");
}
}
}
java.util.Arrays类
Arrys类包含了:排序、查找、填充、打印内容等常见的数组操作
使用Arrays类输出数组中的元素
package com.gaobo.testshuzu;
//测试Arrays类
import java.util.Arrays;
public class Test05 {
public static void main(String[] args) {
int [] a = {1,2};//静态数组
System.out.println(a);//输出a的地址
System.out.println(Arrays.toString(a));//输出[1,2],toString是Arrays里的静态方法
}
}
使用Arrays类对数组元素进行排序一
Arrrays.sort(); 输出
例:
package com.gaobo.testshuzu;
//测试Arrays类
import java.util.Arrays;
public class Test05 {
public static void main(String[] args) {
int[] a = {1, 2, 323, 23, 543, 12, 59};
System.out.println(Arrays.toString(a));
Arrays.sort(a);
System.out.println(Arrays.toString(a));
}
}
使用Arrays类实现二分法查找法
例:
package com.gaobo.testshuzu;
import java.util.Arrays;
public class Test06 {
public static void main(String[] args) {
int [] a = {1,2,323,23,543,12,59};
System.out.println(Arrays.toString(a));
Arrays.sort(a);//使用二分法查找,必须先排序
System.out.println(Arrays.toString(a));//返回排序后新的索引位置,若未找到返回负数
System.out.println("该元素的索引:"+Arrays.binarySearch(a,12));//这里如果没有查到12,则返回负数
}
}
使用Arrays类对数组进行填充
例:
package com.gaobo.testshuzu;
import java.util.Arrays;
public class Test07 {
public static void main(String[] args) {
int [] a = {1,2,323,23,543,12,59};
System.out.println(Arrays.toString(a));//输出
Arrays.fill(a,2,4,100);//将2到4索引到元素替换为100;
System.out.println(Arrays.toString(a));
}
}