zoukankan      html  css  js  c++  java
  • Java 之 Arrays 类

    一、概述

      java.util.Arrays 此类包含用来操作数组的各种方法。比如排序和搜索等,其所有方法均为静态方法,调用非常方便。

    二、操作数组的方法

      (1)使用二分搜索法来搜索指定的 int 型数组,以获取指定的值;要求数组是有序的,否则结果不确定;如果key在 数组a中存在,就返回找到的第一个的下标,如果不存在就返回负数。

    public static int binarySearch(int[] a,int key)
    

      (2)从original原数组中复制得到一个新数组,新数组的长度为newLength

    public static int[] copyOf(int[] original,int newLength)
    

      (3)从original原数组中把[from,to)复制出来,构成新数组要求from必须在original的合理下标范围内,to可以超过长度

    public static int[] copyOfRange(int[] original,int from,int to)
    

      (4)比较两个数组的长度和内容是否一致  

    public static boolean equals(int[] a,int[] a2)
    

      (5)把a数组的元素中val填充

    public static void fill(int[] a,int val)
    

      (6)把数组a按照升序排列

    public static void sort(int[] a)
    

      (7)把a数组的元素,遍历,拼接为一个字符串返回,效果

    public static String toString(int[] a)

      (8)返回一个受指定数组支持的固定大小的列表。

    static <T> List<T> asList(T... a)
    

          注意:转化后的 list 的一个只读的集合,而且它的类型是 java.util.Arrays$ArrayList不是java.util.ArrayList

    三、arraycopy 方法

      Object:是所有引用数据类型的根父类

      Object类型的变量,形参,就可以接受任意的引用数据类型的对象,包括数组。

    public static native void arraycopy(Object src, int srcPos, Object dest, int destPos,int length);
    

      第一个参数:src          原数组对象

      第二个参数:srcPos    从原数组的[srcPos]下标开始复制

      第三个参数:dest        目标数组对象

      第四个参数:destPos   目标数组从[destPos]开始存储

      第五个参数:length      表示从原数组复制几个元素

      说明:如果 src 和 dest 是同一个数组的话,那么就会实现数组的元素的移动

      Demo1:

     1 public static void main(String[] args) {
     2     // 定义int 数组
     3     int[] arr = {2,34,35,4,657,8,69,9};
     4     // 打印数组,输出地址值
     5     System.out.println(arr); // [I@2ac1fdc4
     6     // 数组内容转为字符串
     7     String s = Arrays.toString(arr);
     8     // 打印字符串,输出内容
     9     System.out.println(s); // [2, 34, 35, 4, 657, 8, 69, 9]
    10 }

      Demo2:

    1 public static void main(String[] args) {
    2     // 定义int 数组
    3     int[] arr = {24, 7, 5, 48, 4, 46, 35, 11, 6, 2};
    4     System.out.println("排序前:"+ Arrays.toString(arr)); // 排序前:[24, 7, 5, 48, 4, 46, 35, 11, 6,2]
    5     // 升序排序
    6     Arrays.sort(arr);
    7     System.out.println("排序后:"+ Arrays.toString(arr));// 排序后:[2, 4, 5, 6, 7, 11, 24, 35, 46,48]
    8 }
  • 相关阅读:
    选择Nodejs的N个理由
    linux下查看内存的命令
    Nginx反向代理和负载均衡部署指南
    linux下创建,删除,移动文件命令
    linux文件创建、查看、编辑命令
    Linux下rar命令详解
    linux下tar命令详解
    linux下使用tar命令
    Eclispe怎么给工作空间下的项目分组
    MAT(Memory Analyzer Tool)工具入门介绍
  • 原文地址:https://www.cnblogs.com/niujifei/p/11409442.html
Copyright © 2011-2022 走看看