• Java数组(int为例)


    Java数组(int为例)

    定义:相同数据类型的数据的组合,是一种引用类型,是一个对象,存在堆里。

    数组初始化:int[] scores1 = new int[]{72,90,59};//静态初始化:在声明并初始化数组与给数组相应的元素赋值操作同时进行。

                int scores2[] = new int[3];

        scores2[0] = 72;

                scores2[1] = 90;

                scores2[2] = 59;

    //动态初始化:在声明并初始化数组与给数组相应的元素赋值操作分开进行。

    //声明数组的错误写法:

         1)String[] names = new String[5]{"AA","BB","CC"};

         2)int i[10];

         3)int i = new int[];

    注:不管是动态还是静态初始化数组,一定在创建的时候,就指明了数组的长度!

    引用数组元素:通过数组的下角标引用。下角标从0开始,到n-1结束,n是数组的长度。

    数组长度:通过.length调用

    遍历数组:

             for( int i = 0 ; i < scores.length ; I ++){

                       System.out.println( scores[i]);

       }

    数组元素的默认初始值:

             byte short int long 初始值为0

             float double 初始值为0.0

             char 初始值为 空格

             boolean 初始值为false

             引用类型初始值为null

    一维数组的写法:int[] arrs = new int[5];

                                arrs[0] = 5;

                                //int arrs[] = new int[5];

    二维数组的写法:int [][] is = new int[3][];

            int[][] is2 = {{1,2},{3,4},{5,6}};

    数组常见异常:

    1. 数组下标越界异常:java.lang.ArrayIndexOutBoundsException

            int[] i = new int[10];

            i[0] = 0;

            i[10] = 10;//超出数组下标值(下标值越界)

            for( int j = 0 ; j < i.length ; j++){

                     System.out.println(i[j]);

            }

     

    2.空指针异常: NullPointerException

      (1) boolean[] b =new boolean[3];

         b = null;

         System.out.println(b[0]);

           (2)  String[] str = new String[4];

                                   str[3] = new String("AA");//str[3] = "AA";

                              System.out.println(str[3].toString());

       (3) int[][] j = new int[3][];

                 j[2][0] = 12;

    Arrays类:

    binayeSearch: 二分搜索法,使用二进制搜索算法来搜索指定类型数组,以获得指定的值。

          

     输出结果

              

    输出结果为搜索内容在数组中的位置(从0开始)     

         输出结果

            

       负数指的是该数应在该数组中的位置(从1开始)

    Equals:用于比较两个相同类型的值,如果两个指定类型的值相等则返回true,否则返回false。

                       Fill:用于填充数组

         

    将int[] arrs2 中的内容替换成3

     

    输出结果

                             

                               

                                         将int[] arrs2 中的第二位到第三位替换为9

                                         **2指第二位,4指第四位,9为替换的内容

                                         **2,4指从第二到第三位,而不是从第二位到第四位

                              

                       输出结果

                               

    Sort:对数组中的内容进行排序(从0开始)

              public static void sort(int[] a)

                      

                       copyOf:向数组添加内容

                                        

                                         输出结果

                                         

                       copyOfRange: 截取数组内容

                                                  

                                                   截取第0到第3位内容

                                                   输出结果

                                                           

  • 相关阅读:
    pow()函数结果强制转化为int造成误差的分析
    warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
    博客园鼠标点击特效代码
    codeblocks更改颜色主题
    codeblocks1712设置中文
    SQl
    项目中nodejs包高效升级插件npm-check-updates
    正则表达式的整理(将金钱数变成带有千分位)
    从一个数组中过滤出另外一个数组中相关字段相等的数据
    IONIC3 打包安卓apk详细过程(大量图文)
  • 原文地址:https://www.cnblogs.com/DONGb/p/7267685.html
Copyright © 2020-2023  润新知