flutter 减去我的数字类(整数列表)是崩溃我的android应用程序

8hhllhi2  于 2023-06-07  发布在  Flutter
关注(0)|答案(1)|浏览(161)

我做了我自己的数字类https://pastebin.com/Hhp3CbB8

IdleNumb sub(IdleNumb? number) {
    if (number != null) {
      for (int i = number.numbs.length - 1; i >= 0; i--) {
        while (numbs[i] < number.numbs[i]) {
          numbs[i + 1] -= 1;
          numbs[i] = numbs[i].toInt() + 94868329;
        }

        numbs[i] = numbs[i].toInt() - number.numbs[i].toInt();
        fixNum();
      }
    }

    return this;
}

每当我执行sub函数时,它似乎会使我的应用程序崩溃。所有其他函数似乎都工作正常,只有当调用sub时,应用程序才会崩溃。我遇到的大多数问题,都是调试器打印输出,应用程序在模拟器中关闭。在这个崩溃中,模拟器完全冻结,调试器停止,没有打印任何内容。

hwazgwia

hwazgwia1#

我不完全理解你想用这个类做什么,但错误在这一行:

numbs[i + 1] -= 1;

如果你的结果是一个负数,那么它抛出一个异常
例如:

IdleNumb a=IdleNumb(6);
IdleNumb b=IdleNumb(7);

IdleNumb e=a.sub(b);

你尝试递减数组i+1元素,但数组只有i长,所以你得到一个RangeError。

相关问题