zoukankan      html  css  js  c++  java
  • Java 中的array数组总结之一

    数组:是一个将同种类型的数据存储在存储单元中。

    可以用三种方式声明数组:

    1、数据类型 标识符[];

    int mothDays[];

    2、数据类型 标识符[] = new 数据类型[大小];

    int mothDays[] =new int [12];

    3、数据类型 标识符[] = {值1,值2,...值N};

    int mothDays[] = {31,28,31,30,31,30,31,31,30,31,30,31};

                 备注:数据类型可以是基本数据类型,也可以是引用数据类型。

    数组的赋值:

    1、数据类型 标识符[] = {值1,值2,...值N};

    int mothDays[] = {31,28,31,30,31,30,31,31,30,31,30,31};

    2、数据类型 标识符[] =new 数据类型[]{值1,值2,...值N};

    int mothDays[] =new int []{31,28,31,30,31,30,31,31,30,31,30,31};

    3 、标识符[下标值] = 值N;

    mothDays[2] = 28;

    数组的遍历:

    1、for(int i = 0; i<数组名.length; i++){

        //遍历的操作执行语句

    }

    2、for(数据类型 迭代变量:  数组名){

        //通过迭代变量操作;

    }

    使用API中的Arrays管理数组的排序、复制、查找、填充。

      排序:

        Arrays.sort[数组名];                                   //全部升序排序

        Arrays.sort[数组名,下标值1,下标值2];            //部分排序

      复制:

     1 import java.util.Arrays;
     2 
     3 public class ArraysCopy{
     4     public static void main(String [] agrs){
     5         int a []={1,3,5,7,6,4,2};
     6         System.out.println("原数组:");
     7         for(int temp: a){
     8             System.out.print(temp+" ");
     9         }
    10         System.out.println();
    11         int b[] = Arrays.copyOf(a,10);
    12         int c[] = Arrays.copyOf(a,5);
    13         int d[] = Arrays.copyOfRange(a,2,5);
    14         int e[] = new int[3];
    15         System.arraycopy(a,2,e,0,3);
    16         
    17         System.out.print("b数组从a数组中复制的结果:");
    18         for (int temp: b){
    19             System.out.print(temp+" ");
    20         }
    21         System.out.println();
    22         
    23             System.out.print("c数组从a数组中复制的结果:");
    24         for (int temp: c){
    25             System.out.print(temp+" ");
    26         }
    27         System.out.println();
    28         
    29             System.out.print("d数组从a数组中复制的结果:");
    30         for (int temp: d){
    31             System.out.print(temp+" ");
    32         }
    33         System.out.println();
    34         
    35             System.out.print("e数组从a数组中复制的结果:");
    36         for (int temp: e){
    37             System.out.print(temp+" ");
    38         }
    39         System.out.println();
    40         
    41     }
    42 }

      结果:
        原数组:
        1 3 5 7 6 4 2
        b数组从a数组中复制的结果:1 3 5 7 6 4 2 0 0 0
        c数组从a数组中复制的结果:1 3 5 7 6
        d数组从a数组中复制的结果:5 7 6
        e数组从a数组中复制的结果:5 7 6

      查找:Arrays中的方法。

       binarySeacher(int a[], int key);                            //第一个参数被查找的数组,第二个参数是要查找的参数。

       binarySeacher(int a[], int from, int to,int key);

      填充:在数组赋值的时候使用到。

      fill(int a[],int key);                                                //第一个参数被填充的数组,第二个参数是要赋给每个数组的参数值。

      fill(i  nt a[],int from, int to,int key)

     1 import java.util.Arrays;
     2 
     3 public class ArraysFill{
     4     public static void main(String [] agrs){
     5         int a []=new int[5];
     6         Arrays.fill(a,10);
     7         System.out.print("a数组中填充赋值初始化的结果:");
     8         for(int temp: a){
     9             System.out.print(temp+" ");
    10         }
    11         System.out.println();
    12         Arrays.fill(a,3,4,20);
    13         
    14         System.out.print("a数组部分填充赋值的结果:");
    15         for (int temp: a){
    16             System.out.print(temp+" ");
    17         }
    18         System.out.println();
    19         
    20         
    21     }
    22 }

      结果:

        a数组中填充赋值初始化的结果:10 10 10 10 10
        a数组部分填充赋值的结果:10 10 10 20 10

  • 相关阅读:
    BZOJ 2142: 礼物 [Lucas定理]
    HDU 4349 Xiao Ming's Hope [Lucas定理 二进制]
    HDU 3944 DP? [Lucas定理 诡异的预处理]
    HDU 3037 Saving Beans [Lucas定理]
    HDU 4372 Count the Buildings [第一类斯特林数]
    整理一点与排列组合有关的问题[组合数 Stirling数 Catalan数]
    ZOJ 3557 & BZOJ 2982 combination[Lucas定理]
    BZOJ 3790: 神奇项链 [Manacher 贪心]
    CF 2015 ICL, Finals, Div. 1 J. Ceizenpok’s formula [Lucas定理]
    HDU 1573 X问题 [中国剩余定理]
  • 原文地址:https://www.cnblogs.com/zyj-bozhou/p/6719553.html
Copyright © 2011-2022 走看看