[英]String.ValueOf() to replace NULL with string null when calling a method
我在尝试调用某些方法时尝试使用String.valueOf()
替换null。但是它仍然显示nullpointerexception
。 这可能很简单,但我缺少了一些东西。
我有这样的说法
myvar = this.kind.name().toLowerCase()
它抛出java.lang.NullPointerException
。 我试图获得NPE时保持字符串“ NULL”。 所以我尝试了这个
myvar = String.valueOf(this.kind.name().toLowerCase()) -- not working
我从其他帖子中发现它可能不起作用,因为我们已经重载了方法String.valueOf(char[])
和String.valueOf(object)
并建议在下面使用。 但仍然无法正常工作。 在这种情况下,如何分配字符串null
?
myvar = String.valueOf((this.kind.name().toLowerCase()) null))
您应该使用
myvar = String.valueOf(this.kind.name()).toLowerCase();
不
myvar = String.valueOf(this.kind.name().toLowerCase());
如valueOf()
文档所述
如果参数为null,则字符串等于“ null”; 否则,返回obj.toString()的值
因此, String.valueOf(this.kind.name())
将返回"null"
如果this.kind
为null,则应该能够从this.kind
中确定。
您可以通过添加if条件或类似的代码来处理这种情况
String.valueOf(this.kind == null ? null : this.kind.name()).toLowercase()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.