java Arrays工具类常用方法整理

Arrays工具类常用方法的表格整理:

方法名 调用传参要求 实现效果
asList() 传入一个数组 将数组转换为列表
binarySearch() 传入一个排序好的数组和要查找的元素 在排序数组中查找指定元素的索引
copyOf() 传入一个数组和要复制的长度 复制指定长度的数组
copyOfRange() 传入一个数组、起始索引和结束索引 复制指定范围的数组
deepEquals() 传入两个数组 判断两个数组是否深度相等
deepHashCode() 传入一个数组 计算数组的深度哈希码
deepToString() 传入一个数组 将数组转换为深度字符串表示形式
equals() 传入两个数组 判断两个数组是否相等
fill() 传入一个数组和要填充的值 使用指定的值填充数组
hashCode() 传入一个数组 计算数组的哈希码
parallelPrefix() 传入一个数组和一个操作符 对数组的每个元素应用给定的操作符,并将结果保存在数组中
parallelSort() 传入一个数组 对数组进行并行排序
setAll() 传入一个数组和一个生成器 使用生成器函数设置数组的每个元素值
sort() 传入一个数组 对数组进行排序
spliterator() 传入一个数组 获取数组的Spliterator对象
stream() 传入一个数组 获取数组的Stream对象
toString() 传入一个数组 将数组转换为字符串形式

Java Array工具类常用方法笔记

Java中的Array工具类提供了许多便捷的方法,用于对数组进行各种操作。下面是一些常用的方法及其使用说明:

Arrays.toString()

  • 方法名: toString()

  • 实现效果: 将数组转换为字符串形式,以方便打印输出。

  • 传参要求: 传入一个数组。

  • 举例使用:

    java 复制代码
    import java.util.Arrays;
    
    public class Main {
        public static void main(String[] args) {
            int[] arr = {1, 2, 3, 4, 5};
            System.out.println(Arrays.toString(arr)); // 输出:[1, 2, 3, 4, 5]
        }
    }
Arrays.sort()
  • 方法名: sort()

  • 实现效果: 对数组进行排序,可以按照自然顺序或指定的比较器进行排序。

  • 传参要求: 传入一个数组。

  • 举例使用:

    java 复制代码
    import java.util.Arrays;
    
    public class Main {
        public static void main(String[] args) {
            int[] arr = {5, 2, 7, 3, 1};
            Arrays.sort(arr);
            System.out.println(Arrays.toString(arr)); // 输出:[1, 2, 3, 5, 7]
        }
    }

Arrays.binarySearch()

  • 方法名: binarySearch()

  • 实现效果: 在排序数组中查找指定元素的索引,如果找到返回索引,否则返回负数。

  • 传参要求: 传入一个排序好的数组和要查找的元素。

  • 举例使用:

    java 复制代码
    import java.util.Arrays;
    
    public class Main {
        public static void main(String[] args) {
            int[] arr = {1, 2, 3, 4, 5};
            int index = Arrays.binarySearch(arr, 3);
            System.out.println("Index of 3: " + index); // 输出:2
        }
    }

Arrays.copyOf()

  • 方法名: copyOf()

  • 实现效果: 复制指定长度的数组。

  • 传参要求: 传入一个数组和要复制的长度。

  • 举例使用:

    java 复制代码
    import java.util.Arrays;
    
    public class Main {
        public static void main(String[] args) {
            int[] arr = {1, 2, 3, 4, 5};
            int[] copy = Arrays.copyOf(arr, 3);
            System.out.println(Arrays.toString(copy)); // 输出:[1, 2, 3]
        }
    }

Arrays.fill()

  • 方法名: fill()

  • 实现效果: 使用指定的值填充数组。

  • 传参要求: 传入一个数组和要填充的值。

  • 举例使用:

    java 复制代码
    import java.util.Arrays;
    
    public class Main {
        public static void main(String[] args) {
            int[] arr = new int[5];
            Arrays.fill(arr, 7);
            System.out.println(Arrays.toString(arr)); // 输出:[7, 7, 7, 7, 7]
        }
    }

Arrays.equals()

  • 方法名: equals()

  • 实现效果: 判断两个数组是否相等。

  • 传参要求: 传入两个数组。

  • 举例使用:

    java 复制代码
    import java.util.Arrays;
    
    public class Main {
        public static void main(String[] args) {
            int[] arr1 = {1, 2, 3};
            int[] arr2 = {1, 2, 3};
            boolean isEqual = Arrays.equals(arr1, arr2);
            System.out.println("Arrays are equal: " + isEqual); // 输出:true
        }
    }
相关推荐
karry_k15 小时前
MyBatis批量insert-select踩坑:useGeneratedKeys=true 可能让PostgreSQL返回大量插入结果
java·后端
karry_k15 小时前
PostgreSQL 在 MyBatis 中执行正常 SQL 失效:一次 DELETE USING 踩坑记录
java·后端
vibecoding日记17 小时前
双非如何快速入职字节等大厂大模型?真实案例分析:推理优化和投机解码
算法·求职·大模型工程师
yszaygr213819 小时前
Verilog参数化游程编码RLE模块
算法
SamDeepThinking19 小时前
从源码到代码:MyBatis-Flex 与 MyBatis-Plus 的逐项对比
java·后端·程序员
望易19 小时前
刚设计的大模型架构-双域耦合认知框架
算法·架构
她的男孩1 天前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
复杂网络1 天前
多个 Claude Code 与多个 Codex 协同工作:设计与实现方案
算法
荣码1 天前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python