Java数组操作

声明一个数组

int [] arr = new int[10];//声明一个数组指定大小

int [] arr = { 10,23,30,-10,21 };//申明并初始化数组

int [] arr;//声明一个数组

arr=new int[]{ 10,23,30,-10,21 };

数组的length属性和遍历

int len = arr.length ;//数组的长度

for ( int i = 0 ; i < arr.length ; i ++ ){arr [ i ] = 100;}//数组的遍历

数组的复制 

System.arraycopy(arr,index,arr2,index2,len);

int[] _new_arr= Arrays.copyOf(_old_arr,length);

public static void arraycopy(Object src, int srcPos,Object dest, int destPos, int length)//数组的复制

int[ ] a = { 10 ,20 ,30 ,40 ,50 };

int[ ] a1 = new int[ 6 ] ;

System.arraycopy( a , 1 , a1 , 0 , 4 );

将a数组的从下标1开始的4个元素复制到a1数组中,a1数组从下标0位置开始赋值。程序执行完后,a1的值为20,30,40,50,0,0

类型[ ] newArray = Arrays.copyOf ( 类型[ ] original , int newLength )

int [ ] a = { 10,20,30,40,50 } ;

int [ ] a1 = Arrays . copyOf ( a, 6 );

生成的新数组是原始数组的副本;

newLength小于源数组,则进行截取;(自己通过代码演示效果);

newLength大于源数组,则用0或 null进行填充;

数组扩容: int[] _new_arr=Arrays.copyOf(_old_arr,_old_arr.length+1);

数组排序算法:按照升序

int[] arr = {89,50,84,57,61,20,86};

for(int j=0;j<arr.length-1;j++){

for(i=0;i<arr.length-j-1;i++){

if(arr[i]>arr[i+1]){

  int temp=arr[i+1];

  arr[i+1]=arr[i];

  arr[i]=temp;

}

}

}

==Arrays.sort(arr);

  • 给数组赋值:通过fill方法。
  • 对数组排序:通过sort方法,按升序。
  • 比较数组:通过equals方法比较数组中元素值是否相等。
  • 查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作
posted @ 2016-04-07 18:50  Cao_Yeung  阅读(244)  评论(0)    收藏  举报