用默认值初始化变量时:
有什么区别:
private static String thing = null;
和
private static String thing = "";
我不明白哪个更好,为什么也不知道处理其他数据类型的最佳方式是什么。
private static int number = 0;
private static double number = 0;
private static char thing = 0;
抱歉,我很难学习新语言。
最佳答案
除了将String
初始化为空字符串
private static String thing = "";
其他的赋值是不必要的:Java会将所有原始类型的成员变量设置为其默认值,并将所有引用类型(包括java.String
)设置为null
。
将 String
初始化为 null
还是空字符串由您决定:“无”和“空字符串”是有区别的< sup> *,所以你必须决定你想要哪一个。
* “nothing”和“empty string”之间的区别源于对
null
字符串不可能进行任何操作的观察——例如,它的长度是未定义的,你不能遍历它的字符。相反,空字符串的长度是明确定义的(零),您可以迭代它的字符(这是一个空迭代)。
关于java - 将实例变量初始化为 null、 ""或 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19697003/