这是一个简单的数组声明和初始化.
int arr[] = new int[10]; for(int i = 0; i<arr.length; i++){ arr[i] = i; }
这个
System.out.println(arr[000001]);
至
System.out.println(arr[000007]);
打印出正确的值,但任何高于8的值
System.out.println(arr[000008]);
生成java.lang.RuntimeException:无法编译的源代码
为什么会这样?
解决方法
这与数组无关;以数字0开头的整数是八进制(基数为8).合法的八进制数字是0-7,因此08(或00000008)是无效的八进制整数文字. 8的正确八进制是010.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。