栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java.util.Arrays常用API

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java.util.Arrays常用API

这是对数组进行相关操作的工具类,方法都是静态方法,直接使用类名调用

static String toString(Object[] a)
  • 返回指定数组的字符串形式
  • 还有很多重载方法,只是入参的数据类型不同
  • 底层采用的是StringBuilder的字符串拼接
  • 举例
public class demo {
    public static void main(String[] args) {
        int[] arrs = {1,2,3,4,5};
        System.out.println(arrs); //打印的是数组的内存地址[I@7c30a502
        System.out.println(Arrays.toString(arrs)); //[1, 2, 3, 4, 5]
    }
}
static void sort(Object[] a)
  • 对数组进行升序排序
  • 重载方法Arrays.sort(Object[] a, int formIndex, int toIndex)
    • 包含起始索引,不包含结束索引,将这两个索引范围间的数据进行升序排序
  • 底层采用的是性能较高的排序算法
  • 举例
public class demo {
    public static void main(String[] args) {
        int[] arrs = {8,4,5,6,9,2,0};
        //升序排序
        Arrays.sort(arrs);
        System.out.println(Arrays.toString(arrs)); //[0, 2, 4, 5, 6, 8, 9]
    }
}
static Object[] copyOf(Object[] original, int newLength)
  • 将原数组复制到一个长度为newLength长度的新数组
    • 空出来的位置补0或null
  • 返回值是复制后的新数组
  • 底层源码调用了System.arraycopy方法
  • 举例
public class demo {
    public static void main(String[] args) {
        int[] arrs = {1,2,3,4,5};
        int[] newArrs1 = Arrays.copyOf(arrs, 3);
        System.out.println(Arrays.toString(newArrs1)); //[1, 2, 3]
        int[] newArrs2 = Arrays.copyOf(arrs, 8);
        System.out.println(Arrays.toString(newArrs2)); //[1, 2, 3, 4, 5, 0, 0, 0]
    }
}
static Object[] copyOfRange(Object[] a, int form , int to)
  • 将一个数组的指定索引部分复制到一个新的数组
    • 包含起始索引,不包含结束索引
  • 结束索引超出被复制数组的长度,超出部分会补0或null
  • 如果结束索引比起始索引小,会抛出异常
  • 举例
public class demo {
    public static void main(String[] args) {
        int[] arrs = {1,2,3,4,5};
        int[] newArrs1 = Arrays.copyOfRange(arrs,0,3);
        int[] newArrs2 = Arrays.copyOfRange(arrs,1,10);
        int[] newArrs3 = Arrays.copyOfRange(arrs,5,2);
        System.out.println(Arrays.toString(newArrs1)); //[1, 2, 3]
        System.out.println(Arrays.toString(newArrs2)); //[2, 3, 4, 5, 0, 0, 0, 0, 0]
        //报错://Exception in thread "main" java.lang.IllegalArgumentException: 5 > 2
        System.out.println(Arrays.toString(newArrs3)); 
    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/434564.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号