首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Java中Arrays类详解

Java中Arrays类详解

作者头像
訾博ZiBo
发布2025-01-06 13:59:21
发布2025-01-06 13:59:21
2480
举报

一、概述

1、包路径

java.util.Arrays

2、简介

此类提供了用来操作数组的各种方法。

二、使用方法

1、数组转List

方法:

static <T> List<T> asList(T... a);//只有这一个方法

作用:

将一个数组转化为一个列表,并返回这个列表

使用:
代码语言:javascript
复制
        //1、int数组转List
        int[] ints = {1,2,3,4,5};
        List<Integer> list1 = Arrays.stream(ints).boxed().collect(Collectors.toList());
        //遍历输出list
        list1.forEach(System.out::println);
        //2、Integer转List
        Integer[] integers = {1,2,3,4,5};
        List<Integer> arrayList2 = Arrays.asList(integers);
        //遍历输出list
        arrayList2.forEach(System.out::println);
        //3、尝试非int使用int的方法转List——错误
//        String[] string = {"大哥","二哥","三哥","四哥"};
//        List<String> list2 = Arrays.stream(string).boxed().collect(Collectors.toList());//提示无boxed方法
        //4、再次尝试int[]
//        如果将基本数据类型的数组作为参数传入,
//        该方法会把整个数组当作返回的List中的第一个元素
        int[] ints2 = {1,2,3,4,5};
        List<int[]> list3 = Arrays.asList(ints2);
        System.out.println(Arrays.toString(list3.get(0)));//[1, 2, 3, 4, 5]

2、二分法查询数组元素

方法:

static int binarySearch();//有很多重载方法

作用:

查询数组元素,并返回其索引值,若不存在则返回-1

使用:
代码语言:javascript
复制
        //1、查找数字4在数组内的索引值
        int[] ints1 = {1,2,3,4,5};
        System.out.println(Arrays.binarySearch(ints1,4));//3

3、复制数组元素形成新数组

方法:

static int[] copyOf(int[] original, int newLength);//有很多重载方法

作用:

复制数组形成新的数组(赋值号“=”,只是将原数组的地址给了新数组,并不是创建了新的数组,会使“一改全改”)

使用:
代码语言:javascript
复制
        //1、数组的复制
        int[] ints3 = {1,2,3,4,5};
        int[] ints4 = Arrays.copyOf(ints3,5);//第二参数是新数组的长度
        for (int value : ints4) {
            System.out.println(value);//1 2 3 4 5
        }
        //2、测试赋值号
        int[] ints5 = ints3;
        ints5[0] = 10;
        System.out.println(ints3[0]);//10

4、判断两个数组是否相等

方法:

static boolean equals(int[] a, int[] a2);//有很多重载方法

作用:

判断两个数组的元素是否完全一样

使用:
代码语言:javascript
复制
        //1、测试两个整型数组是否相等
        int[] ints6 = {1,2,3,4,5,6};
        int[] ints7 = {1,2,3,4,5,6};
        int[] ints8 = {1,2,3,4,5,6,7};
        System.out.println(Arrays.equals(ints6,ints7));//true
        System.out.println(Arrays.equals(ints6,ints8));//false

5、数组填充

方法:

static void fill(int[] a, int fromIndex, int toIndex, int val);//有很多重载方法

作用:

用一个值填充指定数组下标的元素

使用:
代码语言:javascript
复制
        //1、用5填充下标为0和1的元素
        int[] ints9 = {1,2,3,4};
        Arrays.fill(ints9,0,2,5);//[0,2),左闭右开区间
        for (int i : ints9) {
            System.out.println(i);//5 5 3 4
        }

6、获得数组的哈希码

方法:

static int hashCode(int[] a);//有很多重载方法

作用:

返回数组的哈希码

使用:
代码语言:javascript
复制
        //1、获取一个整型数组的哈希码
        int[] ints10 = {1,2,3,4};
        System.out.println(Arrays.hashCode(ints10));//955331

7、数组排序

方法:

static void sort(int[] a);//有很多重载方法

作用:

对数组按升序进行排序

使用:
代码语言:javascript
复制
        //1、对一个整型数组按升序进行排序
        int[] ints11 = {9,2,7,8,5,6,4,3,1};
        Arrays.sort(ints11);
        for (int i : ints11) {
            System.out.println(i);//1 2 3 4 5 6 7 8 9
        }

8、数组内容转字符串

方法:

static String toString(int[] a);//有很多重载方法

作用:

返回指定数组内容的字符串表示形式

使用:
代码语言:javascript
复制
        //1、返回一个整型数组的字符串形式
        int[] ints12 = {1,2,3,4};
        System.out.println(Arrays.toString(ints12));//[1, 2, 3, 4]
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-01-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、概述
  • 1、包路径
  • 2、简介
  • 二、使用方法
    • 1、数组转List
      • 方法:
      • 作用:
      • 使用:
    • 2、二分法查询数组元素
      • 方法:
      • 作用:
      • 使用:
    • 3、复制数组元素形成新数组
      • 方法:
      • 作用:
      • 使用:
    • 4、判断两个数组是否相等
      • 方法:
      • 作用:
      • 使用:
    • 5、数组填充
      • 方法:
      • 作用:
      • 使用:
    • 6、获得数组的哈希码
      • 方法:
      • 作用:
      • 使用:
    • 7、数组排序
      • 方法:
      • 作用:
      • 使用:
    • 8、数组内容转字符串
      • 方法:
      • 作用:
      • 使用:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档