当将一个对象强制转换为String类型时,如果这个对象为null,就会抛出NullPointerException异常。为了防止这种情况的发生,可以使用Java中提供的一些方法:
- 使用字符串连接符""(推荐)
Object obj = null;
String str = obj + "";
如果obj为null,则obj + ""会返回一个空字符串,不会抛出NullPointerException。
- 使用String.valueOf(Object obj)方法(不推荐)
Object obj = null;
String str = String.valueOf(obj);
如果obj为null,则 String.valueOf(obj) 方法会将它转换成字符串"null",不会抛出NullPointerException。
- 使用Objects.toString(Object obj, String defaultValue)方法(推荐)
Object obj = null;
String str = Objects.toString(obj, "");
Objects.toString(Object obj, String defaultValue)方法可以将obj转换为字符串,并可以设置一个默认值defaultValue。如果obj为null,则会返回defaultValue参数的值,这里我们将defaultValue设置为空字符串""。
通过以上三种方法,我们可以防止Object强转String时出现NullPointerException异常。