为了账号安全,请及时绑定邮箱和手机立即绑定

数组初始化的默认值问题

数组如果指定了元素的个数而只是初始化了一部分元素的值,那么没有指定值得那一部分元素的值会是什么?



正在回答

3 回答

追问一下,字符串String型的默认初始化是怎么处理的?声明一个String型变量的话,他是属于基本类型变量还是引用类型变量呢?

0 回复 有任何疑惑可以回复我~

谢谢,比较全面。

0 回复 有任何疑惑可以回复我~

对于类的成员变量


不管程序有没有显示的初始化,Java  虚拟机都会先自动给它初始化为默认值。

1、整数类型(byte、short、int、long)的基本类型变量的默认值为0。


2、单精度浮点型(float)的基本类型变量的默认值为0.0f。


3、双精度浮点型(double)的基本类型变量的默认值为0.0d。


4、字符型(char)的基本类型变量的默认为 “/u0000”。


5、布尔性的基本类型变量的默认值为 false。


6、引用类型的变量是默认值为 null。


7、数组引用类型的变量的默认值为 null。当数组变量的实例后,如果没有没有显示的为每个元素赋值,Java 就会把该数组的所有元素初始化为其相应类型的默认值。


数组例子:



1)   int[] a;   //声明,没有初始化默认值是null


2)   int[] a=new int[5];   //初始化为默认值,int型为0


局部变量初始化

局部变量声明以后,Java 虚拟机不会自动的为它初始化为默认值。


因此对于局部变量,必须先经过显示的初始化,才能使用它。


如果编译器确认一个局部变量在使用之前可能没有被初始化,编译器将报错。


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1166128    人
  • 解答问题       17589    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

数组初始化的默认值问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信