数组元素的排序:
在java.util.Array.sort(要排序的数组的名称),会对原数组做升序排序,会改变原数组
比如:
int[] ages{20,22,30,35,25}
java.util.Array.sort(ages);
结果是:20 22 25 30 35
数组的复制:
使用Sysout.arraycopy()方法可以实现数组的复制
方法的定义:
public static void arraycopy(Object src,int srcpos,Object dest,int destpos,int length)
方法的说明:
- src:源数组
- srcpos:源数组中的起始位置
- dest:目标数组
- destpos:目标数组的起始位置
- length:要复制的数组元素的数量 比如:
int[] a = new int[]{1,2,3,4,5};
int[] a1 = new int[8];
System.arraycopy(a,1,a1,0,4)
结果: a1数组中:2,3,4,5,0,0,0,0
使用java.util.Array类中的copyOf方法对数组进行复制
方法的定义:
类型[] newArrayName = Array.copyOf(类型[] original,int newLength);
特点:
生成的新数组是源数组的副本
newLength小于源数组,则进行截取
newLength大于源数组,则用0或null进行填充
所产生的新数组可以大于源数组的长度,属于数组的扩容,所产生的新数组可以小于源数组的长度,属于数组缩容
比如:
int[] a={1,2,3,4,5};
int[] a1 = Arrays.copyOf(a,6);
int[] a2 = Arrays.copyOf(a,3);
结果:
a1数组中的内容:1,2,3,4,5,0
a2数组中的内容:1,2,3
二维数组:
语法:
数据类型[][] 二维数组的名称 = new 数据类型[行数][列数];
比如:
int[][] a = new int[3][4];//声明数组并在堆空间中申请12整型空间
|a[0][0] | a[0][1] | a[0][2] | a[0][3]|
|a[1][0] | a[1][1] | a[1][2] | a[1][3]|
|a[2][0] | a[2][1] | a[2][2] | a[2][3]|
二维数组实际上是由多个一维数组组成
实际上上面的二维数组是由a[0] a[1] a[2]三个一维数组组成