第一章 : 入门
1. 数组
1.1 数组初始化
- 动态初始化,指定长度。
- 静态初始化,指定内容。
// 动态初始化,int默认被初始化为0,String默认初始化为\u0000
// boolean类型默认为false, 引用类型默认为null
int[] arr = new int[10];
//静态初始化,长度会被初始化的元素个数推断出来
int[] arr2 = new int[] {1,2,3,4,5};
int[] arr3 = {1,2,3,4};
//静态省略初始化数组时不支持拆分声明与赋值。
- 静态省略初始化数组时不支持拆分声明与赋值。
- 静态初始化数组时也是先初始化为0,再用大括号里面的值去替换。
1.2 数组访问
- 直接sout(数组)只会输出数组内存地址哈希值
- 如果忘了初始化就去使用,会发生空指针异常。
int[] arr = null;
sout(arr[0]); // 运行至此处会抛出异常。
- 数组长度 arr.length。
- 数组作为参数传参时,传过去的是数组内存地址哈希值。
1.3 数组引用
- arr2是arr1的引用,arr2存储的就是arr1内存储的内存地址。
int[] arr1 = new int[3];
int[] arr2 = arr1;