java - 如何将数据库中可以为空的条目转换为字符串?

标签 java swing nullpointerexception jtable

我有一个填充了各种数据的JTable。现在我尝试将其转换为 String 但在我的数据库中它们可以是 null 值,因此当我调用此行时:

String s = model.getValueAt(i,j).toString();

我收到一个异常,这是因为它尝试将 null 值转换为字符串,对吗?

如何让它发挥作用?

最佳答案

您收到 NullPointerException 是因为当您从数据存储中检索信息时,您没有检查它是否为 null。因此,当您调用 model.getValueAt(i,j) 时,很可能在某个时刻返回 null 值。您没有检查此项,因此您在 null 值 (null.toString()) 上调用 toString(),这将导致您的代码因 NullPointerException 崩溃。我建议您使用turnary运算符。这将首先检查返回的值是否为 null,然后根据它是否为 null 创建 String s

String s = ((model.getValueAt(i,j) == null) ? null : model.getValueAt(i,j).toString());

如果记录为 null,这会将您的 String 设置为 null,否则将其设置为记录的值。或者,如果您希望在记录不存在时将其设置为空 String (""),则可以使用:

String s = ((model.getValueAt(i,j) == null) ? "": model.getValueAt(i,j).toString());

关于java - 如何将数据库中可以为空的条目转换为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28070958/

相关文章:

java - SimpleCursorAdapter 抛出 NullPointerException

java - 写入 SourceDataLine 时出现空指针异常

java - 如何使用同步块(synchronized block)序列化异步调用

java - 选择 TextView 时出现 NullPointerException

java - 尝试使用获取缩放实例将图像添加到 JButton

java - 如何使用 Java 中的 JButton 操作调整 JWindow 的宽度和高度?

java - Java 数据对象 (JDO) 是从哪个版本开始允许使用注释来替代 XML 的?

java - JSP 使用服务器时区显示服务器日期和时间

java - 鼠标在网格内移动

java - 什么是NullPointerException,我该如何解决?