Should I set the initial java String values from null to quot;quot;?(我应该将初始 java 字符串值从 null 设置为“吗?)
问题描述
我经常有这样的课程:
public class Foo
{
private String field1;
private String field2;
// etc etc etc
}
这使得 field1 和 field2 的初始值等于 null.让我的所有 String 类字段如下所示会更好吗?
This makes the initial values of field1 and field2 equal to null. Would it be better to have all my String class fields as follows?
public class Foo
{
private String field1 = "";
private String field2 = "";
// etc etc etc
}
然后,如果我与类定义一致,我会避免很多空指针问题.这种方法有什么问题?
Then, if I'm consistent with class definition I'd avoid a lot of null pointer problems. What are the problems with this approach?
推荐答案
我不同意其他海报.使用空字符串是可以接受的.我更喜欢尽可能使用它.
I disagree with the other posters. Using the empty string is acceptable. I prefer to use it whenever possible.
在大多数情况下,空字符串和空字符串表示完全相同的东西——未知数据.是否用 null 或空 String 表示它是一个选择问题.
In the great majority of cases, a null String and an empty String represent the exact same thing - unknown data. Whether you represent that with a null or an empty String is a matter of choice.
这篇关于我应该将初始 java 字符串值从 null 设置为“"吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:我应该将初始 java 字符串值从 null 设置为“"吗?
基础教程推荐
- 设置 bean 时出现 Nullpointerexception 2022-01-01
- Java Keytool 导入证书后出错,"keytool error: java.io.FileNotFoundException &拒绝访问" 2022-01-01
- “未找到匹配项"使用 matcher 的 group 方法时 2022-01-01
- FirebaseListAdapter 不推送聊天应用程序的单个项目 - Firebase-Ui 3.1 2022-01-01
- 如何使用 Java 创建 X509 证书? 2022-01-01
- 减少 JVM 暂停时间 >1 秒使用 UseConcMarkSweepGC 2022-01-01
- 在 Libgdx 中处理屏幕的正确方法 2022-01-01
- 无法使用修饰符“public final"访问 java.util.Ha 2022-01-01
- 降序排序:Java Map 2022-01-01
- Java:带有char数组的println给出乱码 2022-01-01