JDK中提供了一个专门用于操作数组的工具类,即Arrays类,位于java.util 中
1.Arrays.fill
import java.util.*;
public class Main {
public static void main(String args[]) {
/* Arrays.fill();
填充数组
*/
int [] array = {3,4,5,6,7};
String str1 = Arrays.toString(array);
System.out.println(str1); //输出[3, 4, 5, 6, 7]
Arrays.fill(array,6); //给所有值赋值6
String str2 = Arrays.toString(array); //Arrays类的toString()方法能将数组中的全部内容打印出来
System.out.println(str2); //输出[6, 6, 6, 6, 6]
}
}
2.Arrays.sort();
/* Arrays.sort();
数组排序
*/
//数字排序
int [] array = {9 , 8 , 7 , 6 , 5};
Arrays.sort(array); //数组排序
System.out.println(Arrays.toString(array));
//输出 [5, 6, 7, 8, 9]
//字符串排序,先大写后小写
String [] strArr = new String [] {"d" , "a" , "B" , "c"};
Arrays.sort(strArr);
System.out.println(Arrays.toString(strArr));
//输出[B, a, c, d]
//严格按照字母表顺序排序,忽略大小写
Arrays.sort(strArr,String.CASE_INSENSITIVE_ORDER);
System.out.println(Arrays.toString(strArr));
//输出[a, B, c, d]
//反向排序
Arrays.sort(strArr,Collections.reverseOrder());
System.out.println(Arrays.toString(strArr));
//输出[d, c, a, B]
//忽略大小反向排序
Arrays.sort(strArr,String.CASE_INSENSITIVE_ORDER);
Collections.reverse(Arrays.asList(strArr));
System.out.println(Arrays.toString(strArr));
//输出[d, c, B, a]
//选择数组指定位置进行排序
int a[] = new int []{2 , 7 , 4 , 3 };
Arrays.sort(a,0,3);
System.out.println(Arrays.toString(a));
//输出[2, 4, 7, 3]
3.Arrays.equals()
/*
Arrays.equals()
比较数组元素是否相等
*/
int b [] = new int [] {2 , 3, 4};
int c [] = new int [] {3 , 4 ,50};
System.out.println(Arrays.equals(b,c));
//输出 false
4.Arrays.binarySearch()
/*
Arrays.binarySearch();
二分查找法找指定元素的索引值(下标)
数组一定是排好序的,否则会出错,找到元素,只会返回最后一个位置
*/
int d [] = {4 , 5 , 6 , 7};
System.out.println(Arrays.binarySearch(d,5));
//输出1
System.out.println(Arrays.binarySearch(d,8));
//-5 找不到元素
System.out.println(Arrays.binarySearch(d,0,3,5));
//输出1
System.out.println(Arrays.binarySearch(d,0,3,8));
//输出-4
5.Arrays.copyOf() 和 Arrays.copyOfRange()
/*
Arrays.copeOf() 和 Arrays.copeOfRange()
截取数组
*/
int [] e = {6, 7 ,8 , 9};
int [] e1 = Arrays.copyOf(e,3);
System.out.println(Arrays.toString(e1));
//输出[6, 7, 8]
int [] e2 = Arrays.copyOfRange(e,1,3);
System.out.println(Arrays.toString(e2));
//输出[7, 8]
}
}
就大概这些啦,有的以后再补充