zoukankan      html  css  js  c++  java
  • java之数组

    一、声明数组

    数组是引用类型,声明数组并没有分配空间,则该数组变量的值为null。

    类型[]  数组名;

    如:double[]   data;


    二、创建数组

    类型[]  数组名=new 类型[长度];

    数组创建,数组里面的元素会被赋值,数值型基本数据类型的默认赋值为0char类型的默认值为'u000'boolean型的默认值为false


    三、初始化数组

              数组初始化语句  

             类型[]   数组名={value0,value1,...};

             数组初始化语句必须在数组声明,创建时使用。

             类型[]   数组名=new 类型[]{value0,value1,...};

             类型[]   数组名=new 类型[长度]{value0,value1,...};          //长度必须与花括号里面数据的个数一致

             

            new String[0]创建数组,数组的长度为0的空数组。

             没有命令行输入时,main函数的args是对空数组的引用,而不是null。args.length为0。


    四、数组复制

          数组复制有三种方法

    1) 使用循环语句逐个复制

    2)System类中的静态方法arraycopy

        arraycopy(souceArray,srcPos,targetArray,soucePos,length);

        souceArray     源数组

        srcPos            源数组开始复制下标

        targetArray     目标数组

        soucePos      目标数组开始保存下标

        length             复制的长度

    3)使用clone方法复制数组

        int[]   a={1,2,3};

        int[]  b=a.clone();


    五、Arrays类

             java.util.Arrays类包括许多静态方法

            sort或者parallelSort方法对数组或部分数组进行排序。

            例如:

             Arrays.sort(a);

            Arrays.parallelSort(a);    

            Arrays.sort(a,1,3);                  //对数组a[1]到a[3-1]进行升序排列

            Arrays.parallelSort(a,1,3);      //parallelSort方法多处理器时效果更好

            bianrySearch   数组必须升序排序好才能使用

            例如: Arrays.binarySearch(a,11);

            equals检测两个数组是否相等

            例如: Arrays.equals(a,b);

            fill方法填充整个数组或部分数组

            例如:

             Arrays.fill(a,5);               //整个数组填充5

             Arrays.fill(a,1,3,5);        //数组a[1]到a[3-1]填充5


    六、二维数组或者更高维数组定义

            类型[][]  数组名=new 类型[长度1][长度2];      //长度2可以不写,代表定义一维数组的数组。数组定义是必须指定第一个下标

            二维数组其实是一个数组,它的元素是数组。各行的长度可以不同。

            数组名.length获取数组的长度。

        

    七、可变参数列表

        类型  函数名(类型名...参数名)

        java将可变参看作数组对待,一个数组或可变的参数传递给可变参数。

        如:

    int  method(int ... data){
          data[0]=2;
    }
       int[] a={1,2,3};
       method(a);
       method(1,2,3);


    、foreach迭代

         for(类型 value:数组或者集合){

                // value是集合或者数组的一个个元素

         }

        foreach迭代的效率比普通的for循环要高


  • 相关阅读:
    excel2007灵活计算2个日期之间的工作日
    bat
    eclipse Maven操作出现No compiler is provided in this environment.Perhaps you are running on a JRE rather than a JDK?
    将BeyondCompare设置为TortoiseSVN的扩展比较工具
    python_Excel_xlwt
    Pyqt5_实例1
    Word使用技巧——持续更新
    python_serial
    Pyqt5_Python运用过程中一些问题和技巧
    Pyqt5_QfileDialog
  • 原文地址:https://www.cnblogs.com/maokun/p/6710826.html
Copyright © 2011-2022 走看看