一、数组的复制
两种方法:Arrays.copyOf(a,6)
System.arraycopy(a,1,b,0,4)
1、System.arraycopy //数组的复制
public class ArrayDemo {
public static void main(String[] args) {
int[] a = {
10,20,30,40,50};
int[] b = new int[6];
//a:源数组
//1:源数组的起始下标
//b:目标数组
//0:目标数组的起始下标
//4:要复制的元素个数
System.arraycopy(a,1,b,0,4);
for(int i=0;i<b.length;i++) {
System.out.println(b[i]);
}
}
}
2、int[] b = Arrays.copyOf(a,6); //数组的复制,也常用于数组的扩容
若目标的长度>源数组长度,则末尾补默认值
若目标数组长度<源数组长度,则将末尾截掉
int[] a = {
10,20,30,40,50};
//数组的复制
int[] b = Arrays.copyOf(a,3);
System.out.println(Arrays.toString(b));//[10,20,30]
//a:源数组
//b:目标数组
//6:目标数组的长度(元素个数)
//数组的扩容
a = Arrays.copyOf(a,a.length+1);
for(int i=0;i<a.length;i++){
System.out.println(a[i]); //[10,20,30,40,50,0]
}
//数组扩容(创建了一个更大的新的数组,并将原数组数据复制进去了)
二、排序
Arrays.sort(arr);//升序排列(从小到大)
顺序排列的案例:
int[] arr = new int[10];
for(int i=0;i<arr.length;i++){
arr[i] = (int)(Math.random()*100);
System.out.println(arr[i]);
}
Arrays.sort(arr); //对arr进行升序排列
System.out.println("数组排序后的数据:");
for(int i=0;i<arr.length;i++){
System.out.println(arr[i]);
}