Arrays类:fill()方法 数组赋值,sort()方法 升序,equals方法比较,查找数组元素:binarySearch方法,复制数组

Arrays类

  1. import java.util.Arrays;
    
  2. 常用:

  • 给数组赋值:通过fill()方法

import java.util.Arrays;

int[] a={1,5,8,45,84};
Arrays.fill(a,5);//所有都换为5

Arrays.fill(a,1,3,5);//[1,3)的数字换为5

System.out.println(Arrays.toString(a));//输出数组
for (int i = 0; i < a.length; i++) {
    System.out.println("第"+i+"个元素是:"+a[i]);//输出数组
}
  • 对数组排序:通过sort()方法,升序

import java.util.Arrays;

int[] a={1,85,5,99,54,21,12};
Arrays.sort(a);
System.out.println(Arrays.toString(a));//升序[1, 5, 12, 21, 54, 85, 99]
  • 比较数组:通过equals方法比较数组中元素值是否相等

import java.util.Arrays;

int[] a = {1, 25, 85, 52, 64, 11};
int[] b={1, 25, 85, 52, 64};
int[] c = {1, 25, 85, 52, 64, 11};
System.out.println(Arrays.equals(a,b));//false
System.out.println(Arrays.equals(a,c));//true
  • 查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作

import java.util.Arrays;

int[] arr = {1, 25, 85, 52, 64, 11};
Arrays.sort(arr);//必须先给数组排序
int index=Arrays.binarySearch(arr,25);
System.out.println("25的索引位置是:"+index);//2

int index3=Arrays.binarySearch(arr,0,3,1);//从arr中的第0个到第3个(不包括3)中找到1在什么位置
System.out.println("1的索引位置是:"+index3);//0
  • 复制数组

copyOf()方法

import java.util.Arrays;

int[] a={1,25,85,52,64,11};
int[] newarr=Arrays.copyOf(a,2);
System.out.println(Arrays.toString(newarr));//[1, 25]
//新数组长度小于原数组,截止到满足新数组长度

int[] newarr1=Arrays.copyOf(a,9);
System.out.println(Arrays.toString(newarr1));//[1, 25, 85, 52, 64, 11, 0, 0, 0]
//新数组长度大于原数组,之后的多的用0代替

copyOfRange()方法

import java.util.Arrays;

int[] arr={1,25,85,52,64,11};
int[] newarr=Arrays.copyOfRange(arr,1,3);//[1,3)
System.out.println(Arrays.toString(newarr));//[25, 85]
posted @ 2021-06-28 18:04  valder-  阅读(179)  评论(0)    收藏  举报