char cc=args[0].toCharArray();提示数组越界我想问下什么时候会出现这种情况,有什么好的解决方案吗

解决方案 »

  1.   

    开始先判断这个数组是否为空,如果为空就不操作。
    不为空就执行。args[0].toCharArray()就不会越界了。
      

  2.   


    当args不存在也就是说为null时或者长度为0时会出现越界。
    可能是以下情况之一:
    // 调用CC类来取得指定索引下字符串的字符数组。
    class Test {
        public static void main(String[] args) {
            // 情况1: 传个null。
            args = null;
            // 情况2: 传个没有数据的args。
             
             // 实例化,传args。
            CCOperation cc = new CCOperation(args);
            cc.reto();
        }
    }class CCOperation {
        String[] args;
        
        CCOperation(String[] args) {
            this.args = args;
        }    void reto() {
            // 不管三七二十一上来就去索引为0的java.lang.String数据。
            char cc=args[0].toCharArray();
        }
    }
      

  3.   

    char cc=args[0].toCharArray();toCharArray()方法返回的是一个字符数组,你定义的cc是一个字符类型,这样行吗?
      

  4.   

    当args不存在也就是说为null时或者长度为0时会出现越界。