1. arraycopy
Method prototype:
public static void arraycopy(sourceArray,int index1,copyArray,index2,int length)
That is, starting from the index1 position of sourceArray, followed by length elements, Put it at the position of index2 in the copyArray array
Note: index1 and 2 here are all indexes of the array, that is, the subscript of the array
If the length of the copyArray array is less than length , the program will crash.
Example: Create main method
void test_arraycopy() { int []a = {1,2,3,4,5}; int []b = {6,7,8,9,10}; System.arraycopy(a, 2, b, 3, 2); System.out.println("\n通过复制以后的到的数组为:"); for(int i:b) { System.out.printf("%d ",i); } System.out.println(); }
Run result:
通过复制以后的到的数组为: 6 7 8 3 4
java related video tutorial recommendation:java video
2. copyOf and copyOFRange methods
copyOf method prototype:
public static float[] copyOf(float []original,int newLength)
Copy starting from the first element of the array, and the copy length is length , if the length exceeds the original length of the array, the excess elements will be the default value 0, and this method returns an array.
void test_copyOf() { int []a = {11,22,33,44,55}; int []b = Arrays.copyOf(a, 7); System.out.println("测试copyOf函数,复制后得到的b数组为"); for(int i:b) { System.out.printf("%d ",i); } System.out.println("\n通过toString方法输出数组\n"+Arrays.toString(b)); }
Running result:
测试copyOf函数,复制后得到的b数组为 11 22 33 44 55 0 0
The original array length is 5 and length is 7, so the last two digits of the copied array are the default value 0.
copyOfRange method prototype:
public static double[] copyOfRange(double []original,int from,int to)
Copy starts from the position where the original subscript is from, ends at the position of to-1, and returns an array with a length of to-from.
void test_arrayOfRange() { int []a = {55,33,44,22,11}; int []b = Arrays.copyOfRange(a, 1, 4); System.out.println("测试copyOfRange方法:"); System.out.println(Arrays.toString(b)); }
Run results:
测试copyOfRange方法: [33, 44, 22]
3. Improve the method of traversing arrays
##Arrays.toString(array name)
##
for(循环体,数组名) { System.out.println(i); }Or use the Arrays.toString(array name) method
void print_array() { int []a = {1,2,3,4,5}; System.out.println("采用改进方法遍历数组a,输出结果:"); for(int i:a) { System.out.printf("%d ",i); } System.out.println("调用toString方法输出数组b"); System.out.println(Arrays.toString(b)); }
Run result:
采用改进方法遍历数组a,输出结果: 1 2 3 4 5 调用toString方法输出数组b [1, 2, 3, 4, 5]4. Array sorting: sort method
This method has two function prototypes:
public static void sort(doule a[]) public static void sort(doule a[],int start,int end);
The first one is to sort the array in ascending order
The second type is sorted in ascending order from index start to index end-1.
void test_arrayOfRange() { int []a = {55,33,44,22,11}; int []b = Arrays.copyOfRange(a, 1, 4); Arrays.sort(a, 1, 4); Arrays.sort(b); System.out.println("排序后b数组为:"); for(int i:b) { System.out.printf("%d ",i); } System.out.println("\n排序后a数组为:"); for(int i:a) { System.out.printf("%d ",i); } System.out.println(); }
Running result:
排序后b数组为: 22 33 44 排序后a数组为: 55 22 33 44 11
5. In the array Method to find a number in: binarySearchMethod prototype:
public static int binarySearch(double [] a,double number)
Returns the index of the number to be found. If it is not found, a negative number is returned.
void test_binarySearch() { int a[] = {1,2,3}; int x; x= Arrays.binarySearch(a, 2); System.out.println("数组a为:"); System.out.println(Arrays.toString(a)); System.out.println("数字x在数组中的索引(下标)为:"+x); }
Running results:
数组a为: [1, 2, 3] 数字x在数组中的索引(下标)为:1
Recommended java related articles and tutorials:
java quick startThe above is the detailed content of What are the commonly used methods in java arrays. For more information, please follow other related articles on the PHP Chinese website!