`

数组操作工具类Arrays

    博客分类:
  • Java
阅读更多
java.util.Arrays类中包含了用来操作数组(比如排序和搜索)的各种静态方法。此类还包含一个允许将数组作为列表来查看的静态工厂。除非特别注明,否则如果指定数组引用为 null,则此类中的方法都会抛出 NullPointerException。常用的静态方法如下:
sort(A[] a)方法:
public static void sort(A[] a)
对各种基本类型的数组进行调优了的快速排序,为升序排列。
A可以为long,int,float,char,byte,double,short型,甚至可以为String、Date类型。它具体实现是:调用了sort(a, 0, a.length)方法

sort(A[] a, int fromIndex, int toIndex)方法:
public static void sort(A[] a, int fromIndex, int toIndex)
对数组的一段范围内的元素进行升序排序。范围为:从fromIndex到toIndex-1。

binarySearch(byte[] a, byte key)方法:
public static int binarySearch(byte[] a, byte key) 
这个方法查询key元素值在a数组中出现的索引;如果a数组不包含key元素值,则返回-1.调用该方法时要求数组中元素已经按升序排列(调用sort()方法进行排序)。 
public static int binarySearch(A[] a, int fromIndex, int toIndex, A key)寻找一个范围的元素。返回int型的索引。

type[] copyOf(type[] original,int length)方法:
public static type[] copyOf(type[] original,int length)
这个方法将会把original数组复制成一个新数组,其中length是新数组的长度。如果length小于original数组的长度,则新数组就是原数组的前面length个元素;如果length大于original数组的长度,则新数组的前面元素就是原数组的所个元素,后面补充0(数值型)、false(布尔型)或者null(引用型)。 

boolean equals(byte[] a, byte[] a2)方法:
public static boolean equals(byte[] a, byte[] a2)
如果a数组和a2数组的长度相等,而且a数组和a2数组的数组元素也一一相同,该方法将返回true 

fill(byte[] a, byte val)方法:
public static void fill(byte[] a, byte val)
给数组中的每个元素填充相同的值val

fill(byte[] a, int fromIndex, int toIndex, byte val)方法:
public static void fill(byte[] a, int fromIndex, int toIndex, byte val)
在数组的从下表为fromIndex到toIndex-1的范围内,填充相同值val

String toString(int[] a)方法:
public static String toString(int[] a)
返回指定数组内容的字符串表示形式。字符串表示形式由数组的元素列表组成,括在方括号("[]")中。相邻元素用字符 ", "(逗号加空格)分隔。这些元素通过 String.valueOf(int) 转换为字符串。如果 a 为 null,则返回 "null"。 

例子:
public static void test(){
		int[] a = new int[5];   
        int[] b = new int[5];   
        Arrays.fill(a, 1);   
        Arrays.fill(b, 1);   
        System.out.println(Arrays.toString(a));//输出:[1, 1, 1, 1, 1]
        System.out.println(Arrays.toString(b));//输出:[1, 1, 1, 1, 1]
        System.out.println(Arrays.equals(a, b));//输出:true   
        b[2]=11;  b[3]=9;
        System.out.println(Arrays.toString(b));//输出:[1, 1, 11, 9, 1]
        System.out.println(Arrays.equals(a, b));//输出:false   
        Arrays.sort(b);   
        System.out.println(Arrays.toString(b));//输出:[1, 1, 1, 9, 11]
        System.out.println(Arrays.binarySearch(b, 11));//输出:4
        
        int[] c = {1,3,6,2,0,5};
        Arrays.sort(c,2,4);
        System.out.println(Arrays.toString(c));//输出:[1, 3, 2, 6, 0, 5]
        
        int[] d = new int[5];
        Arrays.fill(d, 0,3,2);
        System.out.println(Arrays.toString(d));//输出:[2, 2, 2, 0, 0]
}
分享到:
评论

相关推荐

    day08 16 数组工具类Arrays

    day08_16_数组工具类Arrays

    操作java数组的常用工具类

    为了简化数组的操作并提高代码的效率与可读性,Java提供了`Arrays`类,这是一个包含了一系列静态方法的实用工具类,用于执行各种数组操作。以下是对`Arrays`类中部分常用方法的详细解析: #### 1. `binarySearch` `...

    第03章 方法与数组 11 Arrays工具类

    在Java编程语言中,Arrays工具类是Java标准库(java.util包)的一部分,它提供了大量静态方法,用于操作和处理数组。本章我们将深入探讨Arrays工具类的核心功能和使用方式,帮助你更好地理解和运用这个强大的工具。 ...

    JAVA中工具类Arrays和异常处理的实例操作.doc

    public class 数组工具类Arrays的使用 { public static void main(String[] args) { int array[] = new int[50]; for (int i = 0; i ; i++) { array[i] = (int)(Math.random() * 100); } Arrays.sort(array);...

    1.1. Arrays工具类、二维数组.md

    1.1. Arrays工具类、二维数组.md

    java数组及arrays类对数组的操作实例

    Arrays 类是 Java 提供的一个工具类,用于操作数组。该类提供了多种方法来操作数组,包括排序、查找、复制、比较等。 在本文中,我们将通过一个实例来展示 Java 数组及 Arrays 类对数组的操作。首先,我们创建了一...

    Java 8增强的工具类-Arrays

    Java 8 中增强的工具类 Arrays 提供了一个新的 for 循环语法,能够更方便地遍历数组和 Collection 等类型的对象。 Java 中的传统 for 循环方式 在 Java 中,通常使用 for 循环来遍历数组或 Collection 对象。例如...

    java各种功能集合和工具.rar

    Arrays是操作数组对象的工具类 Collections是操作集合对象的工具类 Objects是操作引用数据类型对象的工具类 Arrays的常用方法 普通排序 Arrays.sort(int[] a) Arrays.sort(int[] a, int fromIndex, int toIndex) ...

    java的arrays数组排序示例分享

    Java中的`Arrays`类是处理数组的重要工具,它包含了多种操作数组的方法,其中包括排序功能。在Java中,数组排序有两种主要情况:基本数据类型的数组排序和复合数据类型的数组排序。 对于基本数据类型的数组,例如`...

    三个工具类

    例如,Java中的`java.util.Arrays`就是处理数组的工具类,提供了排序、查找、复制等操作。了解这类工具类,你需要掌握基本的数据类型、数据结构以及相关的算法知识。 2. 文件操作工具类: 文件操作工具类通常包含...

    大数据必学Java基础(二十八):Arrays工具类和数组的复制操作

    的复制操作在Java中,数组的复制操作有多种方式,其中`Arrays`工具类提供了便捷的方法。本节将详细介绍如何使用`Arrays`工具类来进行数组的复制。 1. `Arrays.copyOf()` `Arrays.copyOf()`方法用于创建一个新的数组...

    java中的Arrays这个工具类你真的会用吗(一文秒懂)

    Java中的`Arrays`工具类是Java Collections Framework的一部分,位于`java.util`包下,它提供了一系列静态方法,用于处理各种类型的数组,包括排序、搜索、拷贝和比较等操作。这个类的设计目的是为了方便和高效地...

    08.【String类、static、Arrays类、Math类】.zip

    `Arrays`类是Java的实用工具类,提供了一系列静态方法来操作数组。它可以用于排序数组(如`Arrays.sort()`),填充数组(`Arrays.fill()`),复制数组(`Arrays.copyOf()`)以及打印数组内容(`Arrays.toString()`)...

    Java之数组+变量.docx

    一、数组工具类Arrays Arrays是Java提供的一个工具类,用于操作数组。Arrays类提供了多种方法来操作数组,包括排序、复制、字符串化等。 1.1 Arrays.sort(数组):对数组排序,对于基本类型的数组使用优化后的快速...

    02-Java基础(数组-常见操作-遍历

    此时,可以考虑使用并发工具类,如Collections.synchronizedList()将数组转换为线程安全的列表。 数组作为数据结构的基础,理解并熟练掌握其操作是成为Java程序员的关键一步。通过本教程的学习,你将能够有效地创建...

    27个java工具类

    9. **ArrayUtil**:数组操作工具类,包括数组的复制、排序、查找、填充等方法。Java的`java.util.Arrays`类已经提供了许多数组操作。 10. **CollectionUtil**:集合操作工具类,用于处理Java的集合框架,如List、...

    Arrays工具类常用方法

    C语言自学完备手册(33篇) Android多分辨率适配框架 JavaWeb核心技术系列教程 ...在Java API中提供了操作数组的工具类 java.util.Arrays,例如:排序,查找,复制,数组转集合,数组转字符串等常见操

    Java常用工具类

    3. **Apache Commons Lang**:Apache软件基金会的一个开源项目,提供了大量扩展Java语言特性的工具类,如字符串处理、数组操作、反射、枚举操作等。 - `StringUtils`:提供了丰富的字符串操作方法,如空白字符处理...

    JAVA对象以及数据的工具类

    在Java编程语言中,工具类(Utils)是包含各种实用方法的类,这些方法通常用于执行常见的任务,如类型转换、字符串操作、集合处理等。它们使得代码更加简洁且易于维护,因为它们提供了通用功能的封装,避免了重复...

Global site tag (gtag.js) - Google Analytics