JDK中提供了一个专门用于操作数组的工具类,即 Arrays 类,位于 Java。util 包中。该类提供了一系列方法来操作数组,如排序、复制、比较、填充等,用户直接调用这些方法即可,不需要自己编码实现,降低了开发难度。

                        Arrays 类常用方法

public static void main(String[] args) {//equals()方法用于比较两个数组是否相等。只有当两个数组长度相等,且对应位置的元素也一一相等时,该方法返回 true;否则返回false。//sort()方法对数组的元素进行升序排列,即以小到大顺序排列。//toString()方法将数组转换为字符串。//fill()方法替换数组的所有元素为相同的元素。//copyOf()方法将数组复制成一个长度为设定值得新数组。//binarySearch()方法查询数组元素在数组中的下标。int[] arr1= {10,40,30,20,50};int[] arr2= {10,20,30,40,50};//使用 Arrays 类 equals 方法比较arr1和 arr2 的长度即元素是否相等System.out.println("用equals比较后:"+Arrays.equals(arr1, arr2));//替换数组元素     统一替换Arrays.fill(arr1,30);  System.out.println("用fill替换后:"+Arrays.toString(arr1));//复制长度4的数组int[] arr3 = Arrays.copyOf(arr1,3);System.out.println("复制数组后:"+Arrays.toString(arr3));//升序
        Arrays.sort(arr1);//查询某个元素在数组的下标int index = Arrays.binarySearch(arr1, 30);System.out.println("查找元素下标:"+index);}

输出结果:

用equals比较后:false用fill替换后:[30, 30, 30, 30, 30]复制数组后:[30, 30, 30]查找元素下标:2


》使用Arrays 对数组升序排序
public static void main(String[] args) {Scanner input =  new Scanner(System.in);//声明一个成绩数组int[] scores =new int[5];//循环录入学生成绩for (int i = 0; i < scores.length; i++) {System.out.println("输入第"+i+"名学生的成绩:");scores[i]=input.nextInt();}//升序排序前学员成绩循环输出System.out.println("升序排序前:");for (int i = 0; i < scores.length; i++) {System.out.print(scores[i]+"\t");}Arrays.sort(scores);  //对数组进行升序排序        System.out.println("\n升序后:");for (int i = 0; i < scores.length; i++) {System.out.print(scores[i]+"\t");}}


》通过compareToIgnoreCase 比较两个字符串的大小
public static void main(String[] args) {Scanner input = new Scanner(System.in);String[] musics =new String[5];musics[0]="Island";musics[1]="Ocean";musics[2]="Pretty";musics[3]="Sun";int index=musics.length-1;System.out.print("插入前的数组为:");for (int i = 0; i < musics.length; i++) {if(musics[i]==null)  //为null的时候跳出break;System.out.print(musics[i]+"\t");}System.out.println("\n请输入歌曲名称:");String music =input.next();//查找要插入元素的下标for (int i = 0; i < musics.length; i++) {if(musics[i].compareToIgnoreCase(music)>0){System.out.println(musics[i].compareToIgnoreCase(music));index=i;break;}}//数组元素后移for (int i =musics.length-1 ; i> index; i--) {musics[i] = musics[i-1];}musics[index]=music;System.out.println("插入下标为:"+index);System.out.print("插入后的数组为:");for (int i = 0; i < musics.length; i++) {System.out.print(musics[i]+"\t");}}

转载于:https://www.cnblogs.com/szj-ang/p/7267753.html

Java——Arrays类操作数组的工具类相关推荐

  1. Java集合篇:Map接口、Map接口的实现类、Collections集合工具类

    目录 一.Map接口 1.1 Map接口概述 1.2 Map接口常用功能 二.Map接口的实现类 2.1 Map实现类之一:HashMap 2.1.1 HashMap概述 2.1.2 HashMap的 ...

  2. java redis remove_最全的Java操作Redis的工具类

    RedisUtil 当前版本:1.1 增加更全的方法,对以前的部分方法进行了规范命名,请放心替换成新版本. 介绍 最全的Java操作Redis的工具类,使用StringRedisTemplate实现, ...

  3. java 日期操作工具类_java8操作日期的工具类

    java8操作日期的工具类 一.方法概览 该包的API提供了大量相关的方法,这些方法一般有一致的方法前缀: of:静态工厂方法. parse:静态工厂方法,关注于解析. get:获取某些东西的值. i ...

  4. 【Java 代码实例 13】Java操作pdf的工具类itext

    目录 一.什么是iText? 二.引入jar 1.项目要使用iText,必须引入jar包 2.输出中文,还要引入下面```itext-asian.jar```包 3.设置pdf文件密码,还要引入下面` ...

  5. (10)Java泛型-Map集合-集合框架工具类-可变参数-静态导入

    -- 部分1.5新特性Java泛型-Map集合-集合框架工具类 泛型 概述: JDK1.5版本以后出现的新特性,用于解决安全问题,是一个类型安全机制. 对于泛型可以这样理解: 没有使用泛型时,只要是对 ...

  6. java进阶第二讲-数组、String类

    java进阶第二讲-数组.String类 1 回顾一下Object Object中的方法:public native int hashCode();带有native关键字的方法调用的是底层C++的dl ...

  7. Java学习总结:58(Collections工具类)

    Collections工具类 Java提供了一个集合的工具类--Collections,这个工具类可以实现List.Set.Map集合的操作.Collections类的常用方法如下: No. 方法 类 ...

  8. 解决修改properties 属性文件存在缓存问题,附带操作properties文件工具类

    2019独角兽企业重金招聘Python工程师标准>>> 在做项目的时候有些数据不一定需要在数据库管理,例如数据库连接,定时任务等等的配置..有时候需要动态修改这些数据,但在修改完后, ...

  9. java的常用引用类、数组、String类

    java的常用引用类.数组.String类 1. 常用引用类 1.1 Scanner 一个简单的文本扫描器类. 使用: //创建扫描器对象 Scanner sc = new Scanner(Syste ...

最新文章

  1. 从语言学到深度学习NLP,一文概述自然语言处理
  2. Python零基础学习代码实践 —— 提取字符串里面的单词数
  3. php上传图文,php+ajax实现异步上传图文功能详解
  4. HDU 1754 I Hate It(线段树单点更改、区间查找最大值)
  5. PHP实现多服务器session共享之NFS共享
  6. VUE 解决:Method “xxx“ has already been defined as a data property.
  7. 【Spring Cloud】配置中心-Config
  8. RHEL 7.0系统安装配置图解教程
  9. 常用开发资源整理(更新日:2017/4/26)
  10. 云忧cms搭建在宝塔nginx服务器,登录报错
  11. 开关电源电压型与电流型控制
  12. 地理信息安全在线培训考试系统题库-单选题
  13. SMB协议(445)
  14. 原神 - 米游社 每日签到
  15. 不下心删了线上环境mysql数据库数据,辛亏有惊无险
  16. vue之table案例
  17. Python批量改变图片名字
  18. DAY1 Two Shuffled Sequences
  19. 2019 高校运维赛 writeup
  20. UML设计java程序_利用UML序列图设计Java应用程序详解

热门文章

  1. linux权限sudo和su,Linux su和sudo命令的区别,并获得root权限
  2. 离线安装宝塔lnmp_宝塔LNMP环境 Nginx安装EduSoho教程说明
  3. 看风水用什么罗盘最好_兰花用什么花盆栽植最好?
  4. linux移动文件 rf参数_linux下文件的复制、移动与删除命令为:cp,mv,rm
  5. JQuery七个常犯的错误
  6. html在线拖拽环绕,jQuery实现html元素拖拽
  7. java logging api_Java Logging API - Tutorial
  8. python进阶(第三章2)字典和集合
  9. java中System.exit(1)、System.exit(0)、以及return的区别
  10. 三年经验前端社招——丰巢科技