问题标签 [nullpointerexception]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
11 回答
8776 浏览

java - 如何在 getter 链中跟踪 NullPointerException

如果我在这样的调用中收到 NullPointerException:

我得到一个相当无用的异常文本,例如:

我发现很难找出哪个调用实际上返回了 null,经常发现自己将代码重构为如下所示:

然后等待一个更具描述性的 NullPointerException 告诉我要查找哪一行。

你们中的一些人可能会争辩说连接 getter 是不好的风格,无论如何都应该避免,但我的问题是:我可以在不更改代码的情况下找到错误吗?

提示:我正在使用 eclipse,我知道调试器是什么,但我不知道如何将其应用于问题。

我对答案的结论:
一些答案告诉我,我不应该一个接一个地链接吸气剂,一些答案向我展示了如果我不遵守该建议如何调试我的代码。

我已经接受了一个答案,该答案准确地教会了我何时链接吸气剂:

  • 如果它们不能返回 null,请随意链接它们。无需检查!= null,无需担心 NullPointerExceptions(请注意链接仍然违反 Demeter 法则,但我可以忍受
  • 如果它们可能返回 null,永远不要,永远不要链接它们,并检查每个可能返回 null 的 null 值

这使得任何关于实际调试的好建议都毫无用处。

0 投票
9 回答
194600 浏览

java - 如何检查数组元素是否为空以避免Java中的NullPointerException

我有一个部分填充的对象数组,当我遍历它们时,我试图检查所选对象是否null在我用它做其他事情之前。然而,即使是检查它是否null似乎是通过NullPointerException. array.length也将包括所有null元素。您如何检查null数组中的元素?例如,在下面的代码中将为我抛出一个 NPE。

0 投票
3 回答
3071 浏览

java - 空指针异常 JLabel

当我尝试在标签上运行它时,为什么会得到 NullPointerException:

是因为我不能像这样连接两个字符串吗?

理想情况下,我试图将标签设置为玩家的分数,以便可以在需要时正确递增。

这是我的异常堆栈转储:

0 投票
6 回答
49298 浏览

java - 使用 HashMap 的 put 方法时出现 NullPointerException

下面的代码给了我一个NullPointerException. 问题出在以下行:

奇怪的是,我在没有上述行的情况下运行了这段代码,并且调用nextLine[0]nextLine[6]完全按预期工作——也就是说,它们给了我一个 csv 文件的元素。HashMap我用代码声明并初始化

在方法的早期

0 投票
3 回答
1746 浏览

vb.net - VB代码中奇怪的空指针异常

我正在使用 Windows Vista x64 + VSTS 2008。我正在从以下 URL 调试示例程序(本文的相关示例代码),

http://www.codeproject.com/KB/audio-video/CaptureScreenAsVideo.aspx?display=PrintAll&fid=129831&df=90&mpp=25&noise=3&sort=Position&view=Quick&fr=101&select=1160633

但是当按下写入文件按钮时我遇到了空指针异常,这是我的屏幕快照。

http://tinypic.com/view.php?pic=14cbfop&s=5

有什么想法有什么问题吗?

EDIT1:这是整个源代码。

0 投票
6 回答
8052 浏览

java - NullPointerException 使用 ImageIO.read

我在尝试读取图像文件时遇到了 NPE,我终生无法弄清楚原因。这是我的台词:

imgPath 基本上保证是有效的,并且在它到达这里之前它会从服务器复制文件。当它到达那条线时,我得到了这个堆栈跟踪:

此外,这被扔到我的输出窗口中:

无法创建 ICOFile:无法读取字节:2

我不知道发生了什么,特别是因为 File 构造函数成功了。我似乎找不到任何有类似问题的人。有人有什么想法吗?(如果这有什么不同的话,Java 5)

0 投票
3 回答
8605 浏览

java - 为什么我的 servlet 堆栈跟踪为我的类显示“未知来源”?

我目前正在使用 Apache Tomcat 5.5.16 来提供基于 Lucene 的搜索 API。

最近,我的 servlet 类中出现了一些 NullPointerExceptions。该类称为com.my_company.search.servlet.SearchServlet.

对于某些类型的输入,我通常可以创建一个 NullPointerException,但我无法确定它到底在哪里。

StackTrace 表明该错误发生在此处:

com.my_company.search.servlet.SearchServlet.doGet(Unknown Source)

这个类的源文件和 .class 文件都在:

$TOMCAT_HOME/webapps/my_servlet/WEB-INF/classes/com/my_company/search/servlet/

我的问题是,如何让 Tomcat 为我提供更具描述性的错误位置?

0 投票
9 回答
7130 浏览

java - 在 Java 中优雅地避免 NullPointerException

考虑这一行:

显然这条线是一个潜在的错误,属性可能是null,我们会得到一个NullPointerException. 因此,我们需要将其重构为以下两种选择之一:

第一个选项:

第二种选择:

第一个选项阅读起来很尴尬,但更简洁,而第二个选项意图明确,但冗长。

就可读性而言,您更喜欢哪个选项?

0 投票
1 回答
1850 浏览

android - 使用自定义 View 或 SurfaceView 时如何避免 NullPointerException

我创建了一个自定义SurfaceView名称CaptureView并尝试将其添加到main.xml文件中:

该应用程序似乎工作正常,但如果我main.xml在 Eclipse 中从选项卡切换到布局,NullPointerException则会出现文本而不是布局预览。

在活动中,我通过以下方式绑定了控件:

有谁知道如何解决这个问题?

0 投票
3 回答
3960 浏览

java - 使用 JDK 1.6.x G1(“垃圾优先”)的经验

我想知道最新JDK中G1垃圾收集器的经验是什么?我看到NullPointerException在我的程序中抛出了异常,尽管代码在早期的 JDK 中并没有改变并且行为正确。