1

我对 Java 还很陌生,所以请耐心等待。我有一个简单的脚本来处理表单数据并将其发送到错误日志。我有一个简单的空检查,假设如果电话字段未填写,请不要将其发送到错误日志。但由于某种原因,它不起作用。所以我在错误日志中得到的只是字符串“与帐户关联的电话号码:”有什么想法吗?

String phone = request.getParameter("phoneNumber");
String showPhone = (phone != null) ? " Phone number associated with account: " + phone : "";

log.error(showPhone);
4

3 回答 3

3

我不确定您使用的是什么框架,但是 Java 中的 null 对象和空字符串是不一样的。您可能想尝试:

String showPhone = (phone != null && phone.trim().length()>0) ? " Phone number associated with account: " + phone : "";

&& phone.trim().length()>0确保字符串有内容。

于 2013-05-09T17:17:34.267 回答
1

我想你想要使用的是StringUtils.isNotEmpty

 StringUtils.isNotEmpty(null)      = false
 StringUtils.isNotEmpty("")        = false
 StringUtils.isNotEmpty(" ")       = true
 StringUtils.isNotEmpty("bob")     = true
 StringUtils.isNotEmpty("  bob  ") = true

或者StringUtils.isNotBlank

 StringUtils.isNotBlank(null)      = false
 StringUtils.isNotBlank("")        = false
 StringUtils.isNotBlank(" ")       = false
 StringUtils.isNotBlank("bob")     = true
 StringUtils.isNotBlank("  bob  ") = true

像这样:

String phone = request.getParameter("phoneNumber");
String showPhone = StringUtils.isNotBlank(phone) ? " Phone number associated with account: " + phone : "";
于 2013-05-09T17:20:34.113 回答
0
public bool isNullOrEmpty(String val){
return val==null||"".val.trim();
}
于 2013-05-09T18:05:01.350 回答