• java.util.Arrays类


    java.util.Arrays类能方便的操作数组,它所有的方法都是静态的。

    1.filll方法 :给数组中的某段元素附上相同值。

    2.sort方法:对数组中某段元素排序。

    3.equals方法:比较两个数组,判断的是数组中元素值是否相等。

    4.binarySearch方法:对排过序的数组进行二分法查找。

    不错的例子:

    /*-------文件名: UsingArrys.java-------*/
    package com.sjx.test;
    
    import java.util.Arrays;
    /**
     * 使用java.util.Arrays类操作数组
     * @author sjx1
     */
    
    public class UsingArrays {
        /**
         * 整形数组的输出
         */
        public static void output(int[] array){
            if(array != null){
                for(int i = 0 ; i < array.length; i++){
                    System.out.println(array[i] + " ");
                }
            }
        System.out.println();
    }
    public static void main(String[] args){
        //填充数组,将array[]中所有元素的值初始为0
        int[] array0 = new int[5];
        Arrays.fill(array0,5);
        System.out.println("调用Arrays.fill(array0,5)后:");
        UsingArrays.output(array0);
        //将array0中的第2个到第三个元素的值赋为8
        Arrays.fill(array0, 2, 4, 8);
        System.out.println("调用Arrays.fill(array0,0,2,4,8)后:");
        UsingArrays.output(array0);
    
    //对数组进行排序
        int[] array1 = new int[] { 7, 8, 3, 12, 6, 3, 5, 4};
    //对数组的第二个到第6个元素进行排序
        Arrays.sort(array1, 2, 7);
        System.out.println("调用Arrays.sort(array1, 2, 7)后:");
        UsingArrays.output(array1);
        //对整个数组进行排序
        Arrays.sort(array1);
        System.out.println("调用Arrays.sort(array)后:");
        UsingArrays.output(array1);
        
        //比较数组元素是否相等
        System.out.println(Arrays.equals(array0,array1));
        int[] array2 = (int[]) array1.clone();
        System.out.println("array1和array2是否相等?" 
        + Arrays.equals(array1,array2));
        
        //使用二分法在数组中查找指定元素所在的下标
        //数组必须是先排好序的
        Arrays.sort(array1);
        System.out.println("元素3在array1中的位置:" 
        + Arrays.binarySearch(array1,3));
        //如果不存在,就返回负数
        System.out.println("元素9在array1中的位置:" 
        + Arrays.binarySearch(array1,9));
        }
    }

    其实输出的数都是纵向的,只不过写在博客上变了。

    输出:

    调用Arrays.fill(array0,5)后:5 5 5 5 5

    调用Arrays.fill(array0,0,2,4,8)后: 5 5 8 8 5

    调用Arrays.sort(array1, 2, 7)后: 7 8 3 3 5 6 12 4

    调用Arrays.sort(array)后: 3 3 4 5 6 7 8 12

    false

    array1和array2是否相等?true

    元素3在array1中的位置:1

    元素9在array1中的位置:-8

  • 相关阅读:
    fmt命令
    wc命令
    grep命令
    head命令
    C/C++语法知识:typedef struct 用法详解
    邻接表无向图的介绍
    邻接矩阵无向图的介绍
    图的基本概念
    careercup-栈与队列 3.6
    careercup-栈与队列 3.5
  • 原文地址:https://www.cnblogs.com/sjxbg/p/5549399.html
Copyright © 2020-2023  润新知