JAVA数组之Arrays类及其方法

public class Arraysextends Object此类包含用来操作数组(比如排序和搜索)的各种方法。此类还包含一个允许将数组作为列表来查看的静态工厂。

除非特别注明,否则如果指定数组引用为 null,则此类中的方法都会抛出 NullPointerException。

此类中所含方法的文档都包括对实现 的简短描述。应该将这些描述视为实现注意事项,而不应将它们视为规范 的一部分。实现者应该可以随意替代其他算法,只要遵循规范本身即可。(例如,sort(Object[]) 使用的算法不必是一个合并排序算法,但它必须是稳定的。)

此类是 Java Collections Framework 的成员。

 1 import java.util.Arrays;
 2 public class TestArrays {
 3     public static void main(String[] args) {
 4         int[] a = new int[]{11,31,24,98,-9,56,73,-27};
 5         int[] b = new int[]{11,31,24,98,-9,56,73,-27};
 6
 7         // static void sort(int[] a) 对指定的 int 型数组按数字升序进行排序。
 8         Arrays.sort(a);
 9         for(int i = 0; i < a.length; i++){
10             System.out.print(a[i] + "\t");
11         }
12         System.out.println();
13         System.out.println();
14
15         // static int binarySearch(int[] a, int key)使用二分搜索法来搜索指定的 int 型数组,以获得指定的值。
16         int temp = Arrays.binarySearch(a, 73);
17         System.out.println(temp);
18         System.out.println();
19
20         // static int[] copyOf(int[] original, int newLength)
21         // 复制指定的数组,截取或用 0 填充(如有必要),以使副本具有指定的长度。
22         int[] t = Arrays.copyOf(a, a.length);
23         for(int i = 0; i < a.length; i++){
24             System.out.print(t[i] + "\t");
25         }
26         System.out.println();
27         System.out.println();
28
29         // static boolean equals(int[] a, int[] a2)如果两个指定的 int 型数组彼此相等,则返回 true。
30         boolean bool1 = Arrays.equals(a, t);
31         System.out.println(bool1);
32         System.out.println();
33         boolean bool2 = Arrays.equals(a, b);
34         System.out.println(bool2);
35         System.out.println();
36
37         // static int hashCode(int[] a) 基于指定数组的内容返回哈希值。
38         int s1 = Arrays.hashCode(a);
39         int s2 = Arrays.hashCode(b);
40         int s3 = Arrays.hashCode(t);
41         System.out.println(s1);
42         System.out.println(s2);
43         System.out.println(s3);
44         System.out.println();
45
46         // static String toString(int[] a) 返回指定数组内容的字符串表示形式。
47         String str = Arrays.toString(a);
48         System.out.println(str);
49     }
50 }

程序运行结果如下:

-27    -9    11    24    31    56    73    98    

6

-27    -9    11    24    31    56    73    98    

true

false

-678226926
-1591174308
-678226926

[-27, -9, 11, 24, 31, 56, 73, 98]

注意:Arrays 类的 equals 方法比较的是两个数组的 hashCode 值。若两个 hashCode 值相同,说明这两个数组是同一个数组,返回 true ,否则,返回 false 。

    if(a.hashCode == b.hashCode)
        return true;
    else
        return false;
时间: 2024-08-15 13:52:13

JAVA数组之Arrays类及其方法的相关文章

java数组中Arrays类

使用Arrays类之后要先导入包,即在开头添加这行: import.java.util.Arrays 1,排序:Arrays.sort(数组名) 排序后为数组升序. 2,将数组转换成字符串:Arrays.toString(数组名)

Java之美[从菜鸟到高手演练]之Arrays类及其方法分析

作者:二青 个人站点:zhangerqing.cn    邮箱:[email protected]    微博:http://weibo.com/xtfggef 本章主要介绍一下 java.util.Arrays类的重点方法,包括怎么使用及实现原理.这是一个算法类,主要是辅助数组类实现一些排序.搜索等功能,同时也支持数组到List的转换.本章系Java之美[从菜鸟到高手演练]系列之Arrays类及其方法分析,如果有任何问题,欢迎通过上面任何一种方式与我联系! 排序 本文使用JDK1.8.0_25

转:java中包、类、方法、属性、常量的命名规则

必须用英文,不要用汉语拼音 1:包(package):用于将完成不同功能的类分门别类,放在不同的目录(包)下,包的命名规则:将公司域名反转作为包名.比如www.sohu.com 对于包名:每个字母都需要小写.比如:com.sohu.test;该包下的Test类的全名是:com.sohu.Test.java . 如果定义类的时候没有使用package,那么java就认为我们所定义的类位于默认包里面(default package). 2:类:首字母大写,如果一个类由多个单词构成,那么每个单词的首字

Java基础---使用Arrays类操作Java中的数组(三十二)

使用 Arrays 类操作 Java 中的数组 Arrays 类是 Java 中提供的一个工具类,在 java.util 包中.该类中包含了一些方法用来直接操作数组,比如可直接实现数组的排序.搜索等(关于类和方法的相关内容在后面的章节中会详细讲解滴~~). Arrays 中常用的方法: 1. 排序 语法:  可以使用 sort( ) 方法实现对数组的排序,只要将数组名放在 sort( ) 方法的括号中,就可以完成对该数组的排序(按升序排列),如: 运行结果: 2. 将数组转换为字符串 语法: 

java数组的拷贝四种方法:for、clone、System.arraycopy、arrays.copyof

public class ArrayCopy{ public static void main(String []args){ int []a = {1,3,4,5}; toPrint(a); int []aFor=new int[a.length]; //1.for循环复制 System.out.println("===========1.使用for复制"); for(int i=0;i<a.length;i++){ aFor[i]=a[i]; } aFor[2]=10;//改

java数组和Array类

java数组英文:Arrays 存储相同数值的集合的数据结构 An array is a data structure that stores a collection of values of the same type. You accesseach individual value through an integer index. For example, if a is an array of integers, thena[i] is the ith integer in the a

Arrays类及其方法分析

排序 Arrays.sort()方法,对于基本数据类型采用DualPivotQuicksort(多路快排)进行排序,对于引用类型的数组,采用MergeSort(归并排序)进行排序,下面我们分别来讲一下这两类排序算法. 对基本类型数组的排序 Java中的八种基本数据类型,除了boolean,其它七种都是可以且有需求进行排序的,如果一个数组是单一的基础类型,形如int[] data, long data[]都可以直接使用Arrays.sort()进行排序.对于所有可排序的基本类型,都是采用DualP

Java数组操作的10大方法(转)

0.定义一个Java数组 String[] aArray = new String[5]; String[] bArray = {"a","b","c", "d", "e"}; String[] cArray = new String[]{"a","b","c","d","e"}; 第一种是定义了一个数组,并

Java基础(43):Java中的Object类与其方法(转)

Object类 java.lang.Object java.lang包在使用的时候无需显示导入,编译时由编译器自动导入. Object类是类层次结构的根,Java中所有的类从根本上都继承自这个类. Object类是Java中唯一没有父类的类. 其他所有的类,包括标准容器类,比如数组,都继承了Object类中的方法. Object类中的方法 构造方法:public Object() 文档中的类概览: Java中的每个类都具有定义在Object类中的这些方法. protected Object cl