java中数组变量名的默认值 如定义int[] a;此时a的默认值应该为null吧,如
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中数组变量名的默认值 如定义int[] a;此时a的默认值应该为null吧,如相关的知识,希望对你有一定的参考价值。
java中数组变量名的默认值
如定义int[] a;此时a的默认值应该为null吧,如何才能测试看到呢?
就在主方法里,想测试一下老师说的一句话,引用类型的变量默认值为null,但是定义了数组如果不初始化是不能直接打印a的,有什么方法可以看到new之前a的值到底是不是null
追答老师讲的默认值是建立在类成员的基础上的。局部变量是没有默认初始值的。null也是个初始值。
参考技术A 判断一下不就行了,如果是Null,就返回true,否则返回falseJAVA数组总结
关于数组赋值int[] a= a是引用变量
int [] a =new int[元素个数]
数组值没有初始化 默认值0(数组元素类型)
动态初始化数组 int[] a=new int[4] 1,2,3,4,
引用类型是什么? 引用类型是个线索。 用来找到堆中的真正数据
引用类型 也是值传递,形参的改变不会影响实参
自己理解:改变线索,原值不变;改变柜子中东西,原值改变。
找到数组的线索
Java中3个区域:
栈区 堆区 方法区
局部变量a 1,2,3(数组)
int[] a=;
int [] b=a;//b也指向a指向的数组对象
b=1,1,1b的指向改变不会影响a和a指向的对象
b[0]=100;改变的是b指向的数组对象的内容。会影响a
四种变量:
形参和局部变量: 栈区
属性: 堆区(对象内部)
静态属性: 方法区 (随着类)
int[] a=null 线索A 没有指向任何数组 继续访问a[0] NullPointerException 提示错误
int[] b=a b 和a指向同一个数组
引用的方法也是调用:
形参的值不会改变实参的值
实参传递给形参 相当于又形成了一个新的变量
java 中垃圾回收(garbage collection)
垃圾:没有引用指向的对象(数组) 没有使用价值
获取数组的长度
a.length;
String s s.length();
下标:intdex () 可能出现的问题:空指和 越界
数组的遍历
for(int i=0;i<a.length;i++)
foreach
for(int element:a)
element
以上是关于java中数组变量名的默认值 如定义int[] a;此时a的默认值应该为null吧,如的主要内容,如果未能解决你的问题,请参考以下文章
JAVA中,是否先要用常量设置一个值,在用值定义数字,还是直接用常量定义值或数字?