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!
为什么有些要方法要创建新数组有些不用:因为有些方法是对一个数组进行改变,有些是要重新创建数组!

相关文章
Arrays.asList、ArrayList.subList使用规范
Arrays.asList、ArrayList.subList使用规范
|
2月前
|
Java
java的Random类和Arrays.sort类使用实例
java的Random类和Arrays.sort类使用实例
13 0
Java-Arrays.sort()方法的比较器
Arrays.sort()有以下重载(此处只展示两种): Arrays.sort(Object[] a); Arrays.sort(T[] a, Comparator<? super T> c); Arrays.sort(Object[] a) 此方法看似没有要求我们实现比较器,对于基本数据类型,String类型确实如此,因为这些类型中已经自带了compareTo()方法
|
7月前
|
Java
聊聊Java集合框架中的Arrays类
``Arrays`` 和 ``Collections``是分别操作数组和集合的两个工具类。今天就来对 ``Arrays`` 中的内容作个总结。
112 1
聊聊Java集合框架中的Arrays类
|
算法
ArrayList类
ArrayList类
54 0
Arrays类中的常见方法
导包 常见方法的使用 1.Arrays.toString() 2.Arrays.fill() 3.Arrays.sort() 4. Arrays.equals() 5.Arrays.binarySearch() 6.Arrays.copyOf() 和Arrays.copyOfRange()
91 1
|
Java
Map集合详解及Collections方法和Arrays方法
Map集合详解及Collections方法和Arrays方法
63 0
|
索引
Arrays工具类的常用方法
Arrays工具类的常用方法
85 0
|
存储 Java 索引
Arrays Collections工具类
Arrays Collections工具类