• 万能的数组工具类:Arrays


    一常用方法应用
    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: estJavaJava8Java4src>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。

  • 相关阅读:
    Java 中常用缓存Cache机制的实现
    Spring普通类获取bean
    系统升级shell
    shell 操作文本内容(修改增加)
    接口实践;接口与抽象类
    Java中@Override的作用
    类实现多个接口的例子
    java 反射实践
    对象主要属性及识别
    java抽象类实践
  • 原文地址:https://www.cnblogs.com/ainima/p/6331681.html
Copyright © 2020-2023  润新知