Java语言中Arrays工具类使用小结
小标 2018-12-04 来源 : 阅读 1350 评论 0

摘要:本文主要向大家介绍了Java语言中Arrays工具类使用小结,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助。

本文主要向大家介绍了Java语言中Arrays工具类使用小结,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助。


Arrays是针对数组的工具类,可以进行 排序,查找,复制填充等功能。 大大提高了开发人员的工作效率


  关键字

  简介
copyOfRange数组复制
toString转换为字符串
sort排序
binarySearch搜索
equals判断是否相同
fill填充


数组复制


与使用System.arraycopy进行数组复制类似的, Arrays提供了一个copyOfRange方法进行数组复制。


不同的是System.arraycopy,需要事先准备好目标数组,并分配长度。 copyOfRange 只需要源数组就就可以了,通过返回值,就能够得到目标数组了。


除此之外,需要注意的是 copyOfRange 的第3个参数,表示源数组的结束位置,是取不到的。


import java.util.Arrays;

 

public class HelloWorld {

    public static void main(String[] args) {

        int a[] = new int[] { 18, 62, 68, 82, 65, 9 };

 

        // copyOfRange(int[] original, int from, int to)

        // 第一个参数表示源数组

        // 第二个参数表示开始位置(取得到)

        // 第三个参数表示结束位置(取不到)

        int[] b = Arrays.copyOfRange(a, 0, 3);

 

        for (int i = 0; i < b.length; i++) {

            System.out.print(b[i] + " ");

        }

 

    }

}


转换为字符串


如果要打印一个数组的内容,就需要通过for循环来挨个遍历,逐一打印


但是Arrays提供了一个toString()方法,直接把一个数组,转换为字符串,这样方便观察数组的内容


import java.util.Arrays;

 

public class HelloWorld {

    public static void main(String[] args) {

        int a[] = new int[] { 18, 62, 68, 82, 65, 9 };

        String content = Arrays.toString(a);

        System.out.println(content);

 

    }

}

排序


Arrays工具类提供了一个sort方法,只需要一行代码即可完成排序功能。

import java.util.Arrays;

 

public class HelloWorld {

    public static void main(String[] args) {

        int a[] = new int[] { 18, 62, 68, 82, 65, 9 };

        System.out.println("排序之前 :");

        System.out.println(Arrays.toString(a));

        Arrays.sort(a);

        System.out.println("排序之后:");

        System.out.println(Arrays.toString(a));

 

    }

}

搜索


查询元素出现的位置


需要注意的是,使用binarySearch进行查找之前,必须使用sort进行排序


如果数组中有多个相同的元素,查找结果是不确定的


import java.util.Arrays;

 

public class HelloWorld {

    public static void main(String[] args) {

        int a[] = new int[] { 18, 62, 68, 82, 65, 9 };

 

        Arrays.sort(a);

 

        System.out.println(Arrays.toString(a));

        //使用binarySearch之前,必须先使用sort进行排序

        System.out.println("数字 62出现的位置:"+Arrays.binarySearch(a, 62));

    }

}

判断是否相同


比较两个数组的内容是否一样


第二个数组的最后一个元素是8,和第一个数组不一样,所以比较结果是false


import java.util.Arrays;

 

public class HelloWorld {

    public static void main(String[] args) {

        int a[] = new int[] { 18, 62, 68, 82, 65, 9 };

        int b[] = new int[] { 18, 62, 68, 82, 65, 8 };

 

        System.out.println(Arrays.equals(a, b));

    }

}

填充


使用同一个值,填充整个数组


import java.util.Arrays;

 

public class HelloWorld {

    public static void main(String[] args) {

        int a[] = new int[10];

 

        Arrays.fill(a, 5);

 

        System.out.println(Arrays.toString(a));

 

    }

}


本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注编程语言JAVA频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 1 不喜欢 | 0
看完这篇文章有何感觉?已经有1人表态,100%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved