------- android培训、java培训、期待与您交流! ----------
class ArrayDemo2//数组(静态初始化—常见问题){
public static void main(String[] args)
{
//int [] arr = new int [2];//后面的int和; 不能丢
//int arr [] = new int [2];//后面的int和; 不能丢 这两种写法都正确但是一般写第一种
/*数组的书写格式二:
int [] arr = new int []{1,3,5,7,2};//注意前面的[]里面不要写长度
int [] arr = {1,3,5,7,2};//上种形式的简写
如果不确定数组的元素 则像下面样写:
int [] arr = new int [5];
arr [0]= 1; //是arr开头 不是int
arr [1]= 3;
*/
//在此情况下 打印arr[] 结果为?
int [] arr = new int []{1,6,4,8,35};//不要丢;
System.out.println(arr[2]);//结果为4 因为从0角标开始 2角标为4
//在数组中经常遇到的一些问题汇总:
//1.
int [] arr1 = new int [3];
System.out.println(arr1[1]);/*如果写的是数组定义的元素个数之外的数 如35
编译的时候是不会提示错误的 因为编译只检查语法错误 还没有在内存中
开辟空间 只有在运行的时候才会报错 //ArrayIndexOutOfBoundsException: 35
即操作数组时,访问到了数组中不存在的角标35 还会提示是(Array2Demo.java:27)
第27行 如果是打印数组个数之内的数结果都是0 */
//dos命令的复制方法是 先标记 在选中后按回车键
//2.
arr1 = null;
System.out.println(arr1[2]);
/*这种情况编译的时候也不会报错 同理上面 还没有开辟空间
NullPointerException 空指针异常 当引用没有任何指向 值为
null的情况 该引用还在用于操作实体 所以报错 */
}
}