Arrays类

简介: Arrays类

Arrays类
🎖Arrays类是Java中用来操作数组的模块他的使用方法是在Java类中使用import java.util.Arrays进行导入,并使用Arrays.方法()进行调用方法!

Arrays类的fill方法
🎟fill方法有两种用途!

第一种就是填充数组,将数组中的全部元素转换为所输入的元素

第二种就是替换数组元素,将数组中某个元素进行单个替换

用fill方法填充数组
🌋在初始化一个数组之后,如果没有给数组的元素赋值,那么这个数组中的元素默认是为0的,那么我们一个个进行赋值又会略显麻烦,会堆积代码!所以我们就需要用到fill方法进行填充,但是这么做会让全部元素变成同一个数值!

import java.util.Arrays; //这里导入Arrays类
public class Fill{

public static void main(String[] args){
    int[] mylist = new int[5];    //这里创建一个名称为mylist的数组,数组的元素个个数为5
    Arrays.fill(mylist,3);        //为数组填充3,格式为fill(列表,数值)
    for(int x:mylist){
        System.out.println(x);
    }                                //通过for each来遍历数组元素
}

}
上面的for each在以前的文章中介绍过!

用fill方法替换数组元素
🏜在给元素赋值完或者是填充完元素之后,如果想对某个元素进行修改,那么我们就要重新赋值或者是替换元素,但是重新赋值会增加代码,让代码显得更繁琐,所以Arrays类中提供了替换元素的方法fill!

import java.util.Arrays;
public class Fill{

public static void main(String[] args){
    int[] mylist = {1,2,3,4};
    Arrays.fill(mylist, 1,2,4);
    for(int x:mylist){
        System.out.println(x);
    }

} //这是一个特殊的格式Arrays.fill(列表名称,空格正向索引,反向索引,改变的数值)

}

🎬这里的正反向索引指向的一定要是同一个元素!

Arrays类的复制数组方法
🎟在Java程序的使用过程中,有时候会需要一个含有相同或者是部分相同元素的数组,但是重新创建数组的话就会增加代码长度,减少代码可读性,那么我们就可以使用到复制数组或者是部分数组的方法!

用copyOf复制数组
☄️copyOf方法提供了多种重载的方法,用以复制数组,增加代码可读性。该方法不受数组长度的限制,若超出,则多处部分为0!

import java.util.Arrays;
public class Fill{

public static void main(String[] args){
    int[] mylist = {1,2,3,4};
    int[] justlist = Arrays.copyOf(mylist,4);  //将复制后的数组赋值给justlist
    //格式Arrays.copyOf(列表,复制后的长度)
    for(int x:justlist){
        System.out.println(x);
        }
    System.out.println(mylist);
    System.out.println(justlist);        //这里输出两个数组的内存空间进行检查
    }

 //这是一个特殊的格式Arrays.fill(列表名称,空格正向索引,反向索引,改变的数值)

}

解:从以上结果可以看出赋值成功了,并且内存空间不同(下面我会解释为什么要输出内存空间)

用copyOfRange方法复制部分数组
🎗有时候在编辑代码的时候只需要中间一部分代码,但是copyOf方法只能复制以前面部分为开头的元素,而不能直接复制中间的代码,为了解决这一个问题,这个类提供了另一个方法copyOfRange方法(中文意思:选择复制)利用这个方法就可以解决这一个问题!

import java.util.Arrays;
public class Fill{

public static void main(String[] args){
    int[] mylist = {1,2,3,4};
    int[] justlist = Arrays.copyOfRange(mylist,1,3);
    //Arrays类的方法使用形式Arrays.copyOfRange(列表,第一个索引位置,第二个索引位置)
    for(int x:justlist){
        System.out.println(x);
    }
}

}

注:在末尾有问题解答!

Arrays类对数组进行排序
🎟在代码编译过程中,有时候会需要用到有序的一组数组才能进行更好的操作,但是我们重新进行编译会增加代码数量,所以我们要对代码进行排序,Java中提供了sort方法对数组的元素进行升序排序!

用sort方法进行升序排序
🎬在Java编译过程中,有顺序的数组会让你的编译更加方便,使得你自己以及其他参与编译的人更加清楚,尤其是适合那些大基数的数组更为适用和实用!

import java.util.Arrays;
public class Fill{

public static void main(String[] args){
     
    int[] mylist = {1,7,33,4};
    Arrays.sort(mylist);
    //方式为Arrays.sort(列表)
    for(int x:mylist){
        System.out.println(x);
    }
}

}

问题解答

为什么要在fill方法中加空格:因为不加空格就会使他执行不正确,无法达到效果
为什么要输出内存空间吗:如果在同一个内存空间,一个数组改变之后另一个也会随之改变,会影响后续程序执行
copyOfRange方法如果超出索引最大限度会怎么样:如果超出,则超出部分默认为0!
为什么有些要方法要创建新数组有些不用:因为有些方法是对一个数组进行改变,有些是要重新创建数组!

相关文章
|
6天前
|
云安全 人工智能 安全
AI被攻击怎么办?
阿里云提供 AI 全栈安全能力,其中对网络攻击的主动识别、智能阻断与快速响应构成其核心防线,依托原生安全防护为客户筑牢免疫屏障。
|
16天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~
|
10天前
|
安全 Java Android开发
深度解析 Android 崩溃捕获原理及从崩溃到归因的闭环实践
崩溃堆栈全是 a.b.c?Native 错误查不到行号?本文详解 Android 崩溃采集全链路原理,教你如何把“天书”变“说明书”。RUM SDK 已支持一键接入。
625 217
|
存储 人工智能 监控
从代码生成到自主决策:打造一个Coding驱动的“自我编程”Agent
本文介绍了一种基于LLM的“自我编程”Agent系统,通过代码驱动实现复杂逻辑。该Agent以Python为执行引擎,结合Py4j实现Java与Python交互,支持多工具调用、记忆分层与上下文工程,具备感知、认知、表达、自我评估等能力模块,目标是打造可进化的“1.5线”智能助手。
861 61
|
8天前
|
人工智能 移动开发 自然语言处理
2025最新HTML静态网页制作工具推荐:10款免费在线生成器小白也能5分钟上手
晓猛团队精选2025年10款真正免费、无需编程的在线HTML建站工具,涵盖AI生成、拖拽编辑、设计稿转代码等多种类型,均支持浏览器直接使用、快速出图与文件导出,特别适合零基础用户快速搭建个人网站、落地页或企业官网。
1341 157
|
5天前
|
编解码 Linux 数据安全/隐私保护
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
249 138
|
7天前
|
存储 安全 固态存储
四款WIN PE工具,都可以实现U盘安装教程
Windows PE是基于NT内核的轻量系统,用于系统安装、分区管理及故障修复。本文推荐多款PE制作工具,支持U盘启动,兼容UEFI/Legacy模式,具备备份还原、驱动识别等功能,操作简便,适合新旧电脑维护使用。
551 109