尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
50-常用类-Arrays
1.问题引出数组操作的复杂性在 Java 中数组是非常常用的基本数据结构但它在操作上有一定的限制。例如数组的大小一旦确定就不能更改。手动进行数组的排序、查找、填充等操作需要编写很多冗长的代码。为了简化数组的操作Java 提供了一个工具类Arrays它包含了大量的静态方法用于处理数组的常见任务如排序、查找、填充、比较等。该类属于java.util包所有方法都是静态的因此可以直接通过类名调用。2.Arrays类的常用方法1.排序Arrays.sort()对数组进行排序。对于数字、字符类型的数组Arrays.sort()会按照升序排序。对于对象类型的数组Arrays.sort()会根据对象的自然顺序进行排序。示例int[] arr {5, 3, 8, 1, 2}; Arrays.sort(arr); // 对数组进行升序排序 System.out.println(Arrays.toString(arr)); // 输出 [1, 2, 3, 5, 8]注意1.因为数组是引用类型所以通过sort排序后会直接影响到实参 arr2.查找Arrays.binarySearch()二分查找数组中的元素。该方法要求数组已经排序。int[] arr {1, 2, 3, 5, 8}; int index Arrays.binarySearch(arr, 5); // 查找 5 的索引位置 System.out.println(index); // 输出 33.填充Arrays.fill()将数组中的所有元素设置为指定的值。int[] arr new int[5]; Arrays.fill(arr, 10); // 将 arr 数组的所有元素填充为 10 System.out.println(Arrays.toString(arr)); // 输出 [10, 10, 10, 10, 10]4.数组转换Arrays.toString()将数组转换为字符串形式方便输出。int[] arr {1, 2, 3, 4}; System.out.println(Arrays.toString(arr)); // 输出 [1, 2, 3, 4]eg打印数组内容public class ArraysMethod01 { public static void main(string[] args){ Integer[] integers {1,20,90}; //原方法遍历数组 for(int i0;iintegers.length;i){ System.out.println(integers[i]); } //直接使用Arrays.tostring方法显示数组 System.out.println(Arrays.toString(integers))//输出 [1,20,90] ,把数组内容转换成字符串形式再套上[ ] 输出出来 } }Arrays.deepToString()如果数组包含嵌套数组使用Arrays.deepToString()可以递归地将数组转换为字符串。int[][] arr {{1, 2}, {3, 4}}; System.out.println(Arrays.deepToString(arr)); // 输出 [[1, 2], [3, 4]]5.数组比较Arrays.equals()比较两个数组是否相等要求两个数组的长度相同且每个对应的元素都相等。int[] arr1 {1, 2, 3}; int[] arr2 {1, 2, 3}; System.out.println(Arrays.equals(arr1, arr2)); // 输出 trueArrays.compare()按字典顺序比较两个数组。int[] arr1 {1, 2, 3}; int[] arr2 {3, 2, 1}; System.out.println(Arrays.compare(arr1, arr2)); // 输出负数因为 arr1 小于 arr26.数组复制Arrays.copyOf()复制数组的部分或全部元素。int[] arr {1, 2, 3, 4, 5}; int[] copiedArr Arrays.copyOf(arr, 3); // 复制前 3 个元素 System.out.println(Arrays.toString(copiedArr)); // 输出 [1, 2, 3]Arrays.copyOfRange()复制数组的指定范围的元素。int[] arr {1, 2, 3, 4, 5}; int[] copiedArr Arrays.copyOfRange(arr, 1, 4); // 复制索引 1 到 3 的元素 System.out.println(Arrays.toString(copiedArr)); // 输出 [2, 3, 4]7.数组填充与替换Arrays.setAll()为数组的每个元素设置一个值可以使用 Lambda 表达式进行填充。int[] arr new int[5]; Arrays.setAll(arr, i - i * 2); // 使用 Lambda 填充数组每个元素是其索引的两倍 System.out.println(Arrays.toString(arr)); // 输出 [0, 2, 4, 6, 8]
RELATED

相关推荐

EasyAIoT 移动端一码三端完整指南:一套前端如何打包出 Android APK、iOS IPA、鸿蒙 HAP

EasyAIoT 移动端一码三端完整指南:一套前端如何打包出 Android APK、iOS IPA、鸿蒙 HAP

后端前端人工智能大模型模型推理服务微调计算机视觉音视频 【免费下载链接】easyaiot 我希望全世界都能使用这个系统,实现AI的真正0门槛,人人都能体验到AI带来的好处,而并不只是掌握在少数人手里。支持上千种垂直场景,支持AI模型定…

📅 2026/10/30 6:25:00
Pion WebRTC性能优化终极指南:提升实时通信应用效率的10个技巧

Pion WebRTC性能优化终极指南:提升实时通信应用效率的10个技巧

Pion WebRTC性能优化终极指南:提升实时通信应用效率的10个技巧 Pion WebRTC是一个纯Go语言实现的WebRTC API库,为开发者提供高性能的实时音视频通信能力。无论您是构建视频会议应用、直播平台还是物联网设备,掌握这些性能优化技巧都能显著提…

📅 2026/10/30 6:20:00
Pion WebRTC架构深度解析:Go语言WebRTC实现原理完全指南

Pion WebRTC架构深度解析:Go语言WebRTC实现原理完全指南

Pion WebRTC架构深度解析:Go语言WebRTC实现原理完全指南 Pion WebRTC是一个纯Go语言实现的WebRTC API库,为开发者提供了构建实时音视频通信应用的完整解决方案。作为WebRTC技术的Go语言实现,Pion WebRTC让开发者能够在任何支持Go的环境中轻松…

📅 2026/10/30 6:20:00
MORE NEWS

更多资讯

📰

Nginx前后端服务配置实战与优化指南

1. Nginx 配置前端后端服务实战指南作为现代Web应用的标准部署方案,Nginx因其高性能和灵活的配置能力成为前后端分离架构的核心组件。我在实际项目中经历过数十次Nginx配置迭代,发现90%的部署问题都源于对配置原理理解不透彻。本文将带你深入Nginx配置的…

📰

多体系统故障诊断技术与工程实践

1. 多体系统故障诊断概述多体系统故障诊断是工程领域的重要研究方向,主要针对由多个相互作用的子系统组成的复杂系统进行状态监测和异常识别。这类系统在航空航天、电力网络、智能制造等领域广泛应用,其可靠性直接影响整个系统的运行安全。典型的工业多体…

📰

HTML核心概念与语义化开发实践指南

1. HTML基础概念与核心价值HTML(HyperText Markup Language)作为构建互联网的基石语言,其核心价值在于定义网页内容的结构与语义。不同于CSS负责表现、JavaScript处理行为,HTML专注于内容的组织与关联。这种分工明确的体系使得Web…

📰

商汤LightX2V:实时视频生成框架的技术解析与应用

1. LightX2V:商汤开源的实时视频生成推理框架解析当我在GitHub上第一次看到LightX2V这个项目时,就被它惊人的性能数据吸引了——在H100显卡上实现1.9倍于主流框架的推理速度,这完全颠覆了我对视频生成效率的认知。作为一个长期关注生成式AI的…

📰

AI自动调试技术:原理、实现与工程实践

1. AI自动调试技术概述在软件开发领域,调试(Debugging)一直是耗时且需要丰富经验的工作环节。传统调试流程通常包括:复现问题→定位错误→分析原因→修复验证,这个过程往往占据开发周期的30%-50%时间。AI自动调试技术的…

📰

OneTrans-V2:统一召回与排序的生成式检索架构落地实践

1. 从两个模块到一条链路:OneTrans-V2 到底想解决什么问题推荐系统这个行当,干了几年之后你会发现一个特别拧巴的现实:召回和排序明明是同一个目标的两段路,却硬生生被拆成了两套模型、两套特征、两套工程链路。召回阶段用双塔&am…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬