如果我的列表为空,我有此代码可以显示一条消息。第一次工作,我得到了JOptionPane。但是,如果我将一个项目添加到列表中,然后将其删除,如果列表再次为空,则单击删除,则会出现NullPointerException错误。是否有一个原因?

最佳答案

罪魁祸首是:

 String selectListValue = selectionList.getSelectedValue().toString();


并且

  if(selectListData.size() > 0)
  // Null pointer exception will be thrown is selctionData is Null


在这种情况下,您无需检查selectionList是否为null。理想情况下,您应该在执行任何操作之前检查对象是否为空。

正确方法:

if(selectionList != null)
{
    String selectListValue = selectionList.getSelectedValue().toString();
   // perform yoour operations
}


还要更改:

  if(selectListData != null && selectListData.size() > 0)

关于java - NullPointerException无法在GUI中正确捕获,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22028253/

10-12 00:23
查看更多