gpt4 book ai didi

java - 比较两个字符串给出 java.lang.NullPointerException

转载 作者:行者123 更新时间:2023-12-01 17:54:20 24 4
gpt4 key购买 nike

我正在尝试从 HTML 帖子中获取复选框值。我的问题是帖子返回 on 或 null 而不是 true 或 false,因此我需要将其转换为 true 或 false 才能插入数据库。

 Boolean hasProfile7 = Boolean.valueOf(request.getParameter("hasProfile7"))

hasProfile7 即使在“on”状态下也是 false

 Boolean hasProfile7 = (request.getParameter("hasProfile7").equals("on")) ? true : false;

当未选中复选框(错误)时,这会导致我的应用程序崩溃,并给出 java.lang.NullPointerException

 Boolean hasProfile7 = (request.getParameter("hasProfile7") == "on") ? true : false;

这给了我总是错误的。

我能做什么?我只希望 bool 在“on”时为 True,在“null”时为 false

最佳答案

这是将常量与字符串进行比较的 null 安全方法:

"some-value".equals(variable) // ok

如果 variable 为 null,以下代码片段将引发空指针异常,因为不允许对 null 值调用 equals 方法:

variable.equals("some-value") // not recomended

如果 value 包含“on”,该方法将返回 true,否则返回 false:

public boolean isChecked(final String value) {
if (Objects.isNull(value)) {
return false;
}

if ("on".equals(value.toLowerCase())) {
return true;
}

return false;
}

关于java - 比较两个字符串给出 java.lang.NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46547260/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com