int 上出现 NullPointerException?

发布于 2024-11-09 02:47:02 字数 220 浏览 5 评论 0原文

有谁可以帮助我解决这个问题...

我的代码: http://pastebin.com/eD2WknXA

崩溃在第 178 行带有 NPE 的

数组所在类的构造函数中,我什至放置了一个将所有整数设置为 0 的代码块,但即使这样也没有帮助?

有人吗?

is there anyone who can help me with this...

My code: http://pastebin.com/eD2WknXA

Crashes at the line 178 with a NPE

In the constructor of the class which the array is in, I even put a block of code which sets all the integers to 0, but even this didnt help?

anyone?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

傻比既视感 2024-11-16 02:47:02

您很可能拥有

  • 一个 Integer[],其 Integer 元素为 null(自动拆箱)
  • 一个 int[],它本身就是null

编辑

从您粘贴的代码来看,它只能是数组cur本身,即nullroot 不能为 null,因为这样 NPE 将位于上一行

You are very likely to have either

  • An Integer[] with an Integer element being null (auto-unboxing)
  • An int[], which is null itself.

EDIT:

From your pasted code, it can only be the array cur itself, which is null. root cannot be null, because then the NPE would be on the previous line

水水月牙 2024-11-16 02:47:02

您确定它在某些时候没有使用 Integer 并自动拆箱为 int 吗?例如:

public class Test {
  public static void main(String[] args) throws Exception {
    Integer[] x = { null };

    // Automatic unboxing for each element
    for (int i : x) {
      System.out.println(i);
    }
  }
}

Are you sure it's not using an Integer at some point, and auto-unboxing to int? For example:

public class Test {
  public static void main(String[] args) throws Exception {
    Integer[] x = { null };

    // Automatic unboxing for each element
    for (int i : x) {
      System.out.println(i);
    }
  }
}
薯片软お妹 2024-11-16 02:47:02

这是第 178 行:

if (i == root.n-1 || val < cur.values[i] || cur.values[i] == 0) {

因此,要么 root 为 null,要么 root.n 为 null,要么 cur 为 null。放入一些调试语句来检查这些引用的值或在调试器中观察它们。

Here is line 178:

if (i == root.n-1 || val < cur.values[i] || cur.values[i] == 0) {

So either root is null, root.n is null or cur is null. Put some debugging statements in to check the value of these references or watch them in a debugger.

淡紫姑娘! 2024-11-16 02:47:02

难道你的int数组(里面没有任何元素)是null吗?

Can it be that your int array (not any element inside) is null?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文