我正在尝试创建一个计数器,如果ImageView数组中包含的Image设置为null,该计数器会增加。我有一个Bullet类调用下面的方法
每当我杀死敌人时,它会将图像设置为“null”
public void Collision(ImageView ene[], Rectangle b){
for (int i = 0; i < 10 * wave; i++) {
if (ene[i].getBoundsInParent().intersects(b.getBoundsInParent())){
ene[i].setVisible(false);
ene[i].setImage(null);
score();
bulletGone();
}
}
}
我的问题是它在checkWave方法中打印出第一个“Null count:”,但从未到达for循环。我是否错误地比较了null?
答案 0 :(得分:0)
看看这个checkWave(ImageView e[])
现在检查你的Collision
方法朋友,你设置为null?回到你检查空的checkWave(ImageView e[])
方法?
希望您找到解决方案。
一个提示:int counter = 10 * wave;//its final
for (int i = 0; i < 10 * wave; i++) {//save yourself some keys
or (int i = 0; i < counter; i++) {
修改
for (int i = 0; i < counter; i++) {
if (e[i].getImage() == null){ //now your loop will do
nullCount++;
System.out.println("Null count: " + nullCount);
}
}