zoukankan      html  css  js  c++  java
  • 数组相关常见的三种错误

    1.数组声明时数据类型不匹配

    错误写法:

    public class Test_0506{
        public static void main(String[] args) {
            // 定义的是int类型数组,但实际是String类型
            int [] array = new String[3];
         }
    }

    Eclipse会提示错误信息,Type mismatch: cannot convert from String[] to int[],如下图提示将array类型改为String[]。

     正确写法:

    public class Test_0506{
        public static void main(String[] args) {
            String[] array = new String[3];
        }
    }

    2.边声明边赋值必须写在同一行

    错误写法:

    public class Test_0506{
        public static void main(String[] args) {
            int [] array = new int[3];
            array = {10, 20, 30};
            array2 = {10. 20, 30};
        }
    }

    运行代码,报错信息为Array constants can only be used in initializers,英文不好,通过翻译软件知道报错内容是“数组常量只能在初始值设定项中使用

    如下图

     正确写法:

    public class Test_0506{
        public static void main(String[] args) {
            int [] array = new int[3];
            array[0] = 10;
            array[1] = 20;
            array[2] = 30;
            int [] array2 = new int [3];
            array2[0] = 10;
            array2[1] = 20;
            array2[2] = 30;
        }
    }

    3.数组下标越界

    错误写法:

    public class Test_0506{
        public static void main(String[] args) {
            int[] array = {10, 20, 30};
            System.out.println(array[3]);
        }
    }

    数组下标是从0开始,从上述代码可以看出来数组长度是3,下标界限就是0~2,所以array[3]超出下标界限,运行报错信息如下:

     java.lang.ArrayIndexOutOfBoundsException表示错误原因是数组下标越界。

    正确写法:

    public class Test_0506{
        public static void main(String[] args) {
            int[] array = {10, 20, 30};
            System.out.println(array[0]);
            System.out.println(array[1]);
            System.out.println(array[2]);
        }
    }

    运行结果:

  • 相关阅读:
    Thinkphp随堂笔记【模型初步上】
    Thinkphp随堂笔记【MVC模式和URl访问的四种方式】
    C# set get 个人学习笔记
    关于文件的操作r、r+、w、w+
    HTTPS的通信步骤02
    HTTPS的通信步骤01
    python六剑客之reduce()函数
    python六剑客之filter()函数
    python六剑客之map()函数
    TCP/IP四层模型
  • 原文地址:https://www.cnblogs.com/mrgavin/p/12836902.html
Copyright © 2011-2022 走看看