Java_数组操作

来源:互联网 发布:fifaonline3数据库查询 编辑:程序博客网 时间:2024/05/16 04:53

1. 使用System的类方法实现数组拷贝

public class Temp {public static void main (String args[]) {int array_a [] = new int [] {5,34,15,27,96,63,78,47,50,82};int array_b [] = new int [] {0,0,0,0,0,0,0,0,0,0};//数组拷贝。原型:static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length) //注意,是数组拷贝,而不是插入。被拷贝的内容会替换原数组的内容。System.arraycopy(array_b, 2, array_a, 3, 5);for (int x : array_a)System.out.print(x + " ");//输出:5 34 15 0 0 0 0 0 50 82//如果选取的srcPos或destPos后面没有length个对象,则会报java.lang.ArrayIndexOutOfBoundsException}}

2. 使用java.util.Arrays的类方法实现数组排序、查找、复制和赋值

public class Temp {public static void main (String args[]) {int array_a [] = new int [] {5,34,15,27,96,63,78,47,50,82};//数组排序java.util.Arrays.sort(array_a);for (int x : array_a)System.out.print(x + " ");//输出:5 15 27 34 47 50 63 78 82 96//数组查找//这个方法查询key元素值在a数组中出现的索引;如果a数组不包含key元素值,则返回-1.调用该方法时要求数组中元素已经按升序排列,这样才能得到正确结果System.out.println(java.util.Arrays.binarySearch(array_a, 34));//输出:3//复制新数组//这个方法将会把original数组复制成一个新数组,其中length是新数组的长度。如果length小于original数组的长度,则新数组就是原数组的前面length个元素;如果length大于original数组的长度,则新数组的前面元素就是原数组的所个元素,后面补充0(数值型)、false(布尔型)或者null(引用型)int array_new [] = java.util.Arrays.copyOf(array_a, 12);for (int x : array_new)System.out.print(x + " ");//输出:5 15 27 34 47 50 63 78 82 96 0 0//按范围复制新数组//这个方法与前面方法相似,但这个方法只复制original数组的from索引到to索引的元素array_new = java.util.Arrays.copyOfRange(array_a, 0, 3);for (int x : array_new)System.out.print(x + " ");//输出:5 15 27//赋值(所有元素)java.util.Arrays.fill(array_a, 0);for (int x : array_a)System.out.print(x + " ");//输出:0 0 0 0 0 0 0 0 0 0//赋值(范围元素)java.util.Arrays.fill(array_a, 0, 5, 1);for (int x : array_a)System.out.print(x + " ");//输出:1 1 1 1 1 0 0 0 0 0}}


原创粉丝点击