欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

万能的数组工具类:Arrays

程序员文章站 2022-05-16 12:55:15
...

一常用方法应用
1代码示例

import java.util.Arrays;

public class ArraysTest
{
	public static void main(String[] args)
	{
		// 定义一个a数组
		int[] a = new int[]{3, 4 , 5, 6};
		// 定义一个a2数组
		int[] a2 = new int[]{3, 4 , 5, 6};
		// a数组和a2数组的长度相等,每个元素依次相等,将输出true
		System.out.println("a数组和a2数组是否相等:"
			+ Arrays.equals(a , a2));
		// 通过复制a数组,生成一个新的b数组
		int[] b = Arrays.copyOf(a, 6);
		System.out.println("a数组和b数组是否相等:"
			+ Arrays.equals(a , b));
		// 输出b数组的元素,将输出[3, 4, 5, 6, 0, 0]
		System.out.println("b数组的元素为:"
			+ Arrays.toString(b));
		// 将b数组的第3个元素(包括)到第5个元素(不包括)赋为1
		Arrays.fill(b , 2, 4 , 1);
		// 输出b数组的元素,将输出[3, 4, 1, 1, 0, 0]
		System.out.println("b数组的元素为:"
			+ Arrays.toString(b));
		// 对b数组进行排序
		Arrays.sort(b);
		// 输出b数组的元素,将输出[0, 0, 1, 1, 3, 4]
		System.out.println("b数组的元素为:"
			+ Arrays.toString(b));
	}
}

2运行结果

a数组和a2数组是否相等:true
a数组和b数组是否相等:false
b数组的元素为:[3, 4, 5, 6, 0, 0]
b数组的元素为:[3, 4, 1, 1, 0, 0]
b数组的元素为:[0, 0, 1, 1, 3, 4]

 

二Java8新增方法举例
1代码示例

import java.util.Arrays;
import java.util.function.*;

public class ArraysTest2
{
	public static void main(String[] args)
	{
		int[] arr1 = new int[]{3, -4 , 25, 16, 30, 18};
		// 对数组arr1进行并发排序
		Arrays.parallelSort(arr1);
		System.out.println(Arrays.toString(arr1));
		int[] arr2 = new int[]{3, -4 , 25, 16, 30, 18};
		Arrays.parallelPrefix(arr2, new IntBinaryOperator()
		{
			// left代表数组中前一个所索引处的元素,计算第一个元素时,left为1
			// right代表数组中当前索引处的元素
			public int applyAsInt(int left, int right)
			{
				return left * right;
			}
		});
		System.out.println(Arrays.toString(arr2));
		int[] arr3 = new int[5];
		Arrays.parallelSetAll(arr3 , new IntUnaryOperator()
		{
			// operand代表正在计算的元素索引
			public int applyAsInt(int operand)
			{
				return operand * 5;
			}
		});
		System.out.println(Arrays.toString(arr3));
	}
}

2运行结果

E:\test\Java\Java8\Java4\src>java ArraysTest2
[-4, 3, 16, 18, 25, 30]
[3, -12, -300, -4800, -144000, -2592000]
[0, 5, 10, 15, 20]
3结果分析
上面代码完成了三个功能
1 对arr1进行排序。
2 对arr2中的每个元素,完成对前面元素的累乘。
3 对元素索引进行计算,将计算结果赋给arr3。