Java 使用null或0或“0”初始化变量之间的差异&引用;

Java 使用null或0或“0”初始化变量之间的差异&引用;,java,variables,null,initialization,Java,Variables,Null,Initialization,在java中声明变量时,是否有人能提供一个简单的示例,说明在何时何地声明null或0或“?我看了一些例子,但不明白,所以有人能用一些简单的例子解释清楚吗?用于声明可以使用“”的字符串 对于声明任何其他非基本数据类型,可以使用null(注意null指针异常) 对于数值数据类型,如byte,intuse可以使用0。 类变量、实例变量或数组组件是(非最终变量),因此无需将它们初始化为false/null/0(这将是多余的): 每个类变量、实例变量或数组组件在创建时都会使用默认值进行初始化(,): 您

在java中声明变量时,是否有人能提供一个简单的示例,说明在何时何地声明
null
0
?我看了一些例子,但不明白,所以有人能用一些简单的例子解释清楚吗?

用于声明可以使用“”的字符串

对于声明任何其他非基本数据类型,可以使用null(注意null指针异常)

对于数值数据类型,如
byte
int
use可以使用0。

  • 类变量、实例变量或数组组件是(非最终变量),因此无需将它们初始化为
    false
    /
    null
    /
    0
    (这将是多余的): 每个类变量、实例变量或数组组件在创建时都会使用默认值进行初始化(,):

  • 您需要初始化局部变量,尽管: 局部变量略有不同;编译器从不为未初始化的局部变量指定默认值。如果无法在声明局部变量的位置初始化它,请确保在尝试使用它之前为其赋值。访问未初始化的局部变量将导致编译时错误

  • 例如,如果您想要一个空字符串,请使用
    string myStr=“”

Null
-这可以分配给所有非原语类型(只是表示这不是指任何对象,并且可以抛出Null指针)

-仅适用于字符串文字

可以将零分配给所有基本体和数字包装器/装箱基本体


嗯,您只能将
0
分配给基本数字或装箱的基本数字类型。您只能将
分配给字符串引用。您可以将任何对象引用指定给
null
。您可以为字符串指定初始值
“”
,但此值与为其指定值
null
完全不同。也许你可以扩大差异。
char zeroChar = 0;
float zeroFloat = 0;
double zeroDouble = 0;
short zeroShort = 0;
long  zeroLong = 0;
byte zeroByte = 0;
int zeroInt = 0;