Arrays类
概述
java.util.Arrays 此类包含用来操作数组的各种方法,比如排序和搜索等。其所有方法均为静态方法,调用起来非常简单。
在程序中通过 import java.util.Arrays; 来进行引用即可使用Arrays类的方法了。
操作数组的方法
Arrays.toString(array);
返回array数组内容的字符串表示形式。
实例:
package com.Mie; import java.util.Arrays; // 引入Arrays public class MusicDay { public static void main(String[] args) { // 声明并创建数组 int[] a = {10, 20, 50, 7, 30}; // 直接打印将输出数组对应的Hash值 System.out.println("直接打印输出为:" + a); // 使用Arrays.toString()方法转换为字符串可输出元素 System.out.println("Arrays.toSring()方法输出为" + Arrays.toString(a)); } }
输出结果为:
直接打印输出为:[I@75b84c92
Arrays.toSring()方法输出为[10, 20, 50, 7, 30]
Arrays.sort(array);
1、将array数组数字进行升序排序。
public class MusicDay { public static void main(String[] args) { // 声明并创建数组 int[] a = {10, 20, 50, 7, 30}; // 输出排序前的数组 System.out.println("没有排序的数组:" + Arrays.toString(a)); // 输出排序后的数组(升序) Arrays.sort(a); // 进行排序 System.out.println("升序排序后的数组:" + Arrays.toString(a)); } }
输出结果为:
没有排序的数组:[10, 20, 50, 7, 30]
升序排序后的数组:[7, 10, 20, 30, 50]
2、字符串排序,先大写后小写
public class MusicDay { public static void main(String[] args) { String[] strArray = new String[] { "z", "a", "H"}; Arrays.sort(strArray); // 输出: [H, a, z] System.out.println(Arrays.toString(strArray)); } }
3、严格按字母表顺序排序,也就是忽略大小写排序 Arrays.sort(strArray, String.CASE_INSENSITIVE_ORDER);
public class MusicDay { public static void main(String[] args) { String[] strArray = new String[] { "z", "a", "H"}; Arrays.sort(strArray, String.CASE_INSENSITIVE_ORDER); //输出: [a, H, z] System.out.println(Arrays.toString(strArray)); } }
4、选择数组指定位置进行排序: Arrays.sort(array, fromIndex, toIndex)
public class MusicDay { public static void main(String[] args) { int[] a = {3,2,1,5,4}; Arrays.sort(a,0,3); //给第0位(0开始)到第3位(不包括)排序 String str = Arrays.toString(a); // Arrays类的toString()方法能将数组中的内容全部打印出来 //输出:[1, 2, 3, 5, 4] System.out.print(str); } }
Arrays.fill(array, val);
可以在指定位置进行数值填充。fill() 方法虽然可以填充数组,但是它的功能有限制,只能使用同一个数值进行填充。
其中,array 表示数组,val 表示填充的值。实例:
public class MusicDay { public static void main(String[] args) { int[] a = new int[5]; // 声明并创建数组 System.out.println("没有填充的数组为:" + Arrays.toString(a)); Arrays.fill(a, 8); // 使用Arrays.fill方法为数组所有元素更新值为8 System.out.println("填充后的数组为:" + Arrays.toString(a)); } }
Arrays.fill 存在多参数的重载方法:
Arrays.fill(array, from, to, val);
参数:
array -- 数组
form -- 替换开始位置(包括)
to -- 替换结束位置(不包括)
var -- 要替换的值
实例:
public class MusicDay { public static void main(String[] args) { int[] a = new int[5]; // 声明并创建数组 System.out.println("没有填充的数组为:" + Arrays.toString(a)); // 使用Arrays.fill方法为数组索引从1到4(包括头不包括尾)的元素更新值为8 Arrays.fill(a, 1,4,8); System.out.println("填充后的数组为:" + Arrays.toString(a)); } }
输出结果为:
没有填充的数组为:[0, 0, 0, 0, 0]
填充后的数组为:[0, 8, 8, 8, 0]

浙公网安备 33010602011771号