String str = "1,2";
String[] arr = str.split(","); //使用","分割字符串
//遍历输出数组
// for (int i = 0; i < arr.length; i++) {
// System.out.println(arr[i]);
// }
//判断数组是否为空
if(arr == null || arr.length ==0){
//数组为空
}
//但是如果直接判断arr[3]为空的话,因为越界本身就会报异常
if (null == arr[3] || "".equals(arr[3])) {
//数组元素为空
}
数组越界异常:
所以读取数组中一个元素时,应考虑数据越界问题,i 应该小于 arr.length()
–
知识点:
数组为null和数组为空的区别
数组为null:是创建了数组的引用,但在堆中并没有数组中的元素
例: int[] array1 = null;
array1是数组类型的空引用,栈中名为array1的内存空间没有存放任何地址。
数组为空:数组是空其实就是数组的长度为0,数组是真正的对象,只是对象中没有元素,也就是说里面没有内容
例: int[] array = {};
此时创建了数组,数组的长度为0,是一个空数组,但是array不是null,它也是一个对象,只不过它的元素个数为0。