• 数组相关常见的三种错误


    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]);
        }
    }

    运行结果:

  • 相关阅读:
    [windows] gcc编译器
    [windos] 命令
    软件版本命名规范
    [linux] vim 编辑器---更改注释文字颜色
    Call Indels/SV常用软件-搬运工
    [生物信息比对软件列表]
    [samtools] 文本查看语法,浏览SNP/INDEL位点
    [python] 之 异常对象
    [python] 之 类-运算符重载
    [R] 之 管理工作空间函数
  • 原文地址:https://www.cnblogs.com/mrgavin/p/12836902.html
Copyright © 2020-2023  润新知