博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java——Arrays类操作数组的工具类
阅读量:5317 次
发布时间:2019-06-14

本文共 3176 字,大约阅读时间需要 10 分钟。

  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

你可能感兴趣的文章
MySQL基础3
查看>>
RxJS & Angular
查看>>
面向对象(多异常的声明与处理)
查看>>
MTK笔记
查看>>
ERROR: duplicate key value violates unique constraint "xxx"
查看>>
激活office 365 的启动文件
查看>>
无法根据中文查找
查看>>
[简讯]phpMyAdmin项目已迁移至GitHub
查看>>
转载 python多重继承C3算法
查看>>
【题解】 bzoj1597: [Usaco2008 Mar]土地购买 (动态规划+斜率优化)
查看>>
css文本溢出显示省略号
查看>>
git安装和简单配置
查看>>
面向对象:反射,双下方法
查看>>
鼠标悬停提示文本消息最简单的做法
查看>>
课后作业-阅读任务-阅读提问-2
查看>>
面向对象设计中private,public,protected的访问控制原则及静态代码块的初始化顺序...
查看>>
fat32转ntfs ,Win7系统提示对于目标文件系统文件过大解决教程
查看>>
Awesome Adb——一份超全超详细的 ADB 用法大全
查看>>
shell cat 合并文件,合并数据库sql文件
查看>>
Android 将drawable下的图片转换成bitmap、Drawable
查看>>