我在类内循环遍历带有对象的数组时遇到了一些麻烦。我在这里写了一个小演示,所以你可以关注:
Tank tanks[] = new Tank[2];
tanks[0] = new Tank();
tanks[1] = new Tank();
tanks[0].doStuff(tanks);
doStuff(Tank[] tanks) {
for (int i = 0; i < tanks.length; i++) {
if (tanks[i].equals(this)) continue;
// Do stuff
}
}
所以,我有一个类型为 Tank 的数组。然后我在 Tank 类中调用方法 doStuff。该方法获取数组并循环遍历它。然后我想对每个不是当前类实例的坦克做一些事情。我希望你能理解我的代码和这个描述。
问题是我得到 nullPointerExceptionif (tanks[i].equals(this))
我在这里做错了什么?