【发布时间】:2020-10-25 21:40:31
【问题描述】:
我正在用 Java 编写游戏。我正在使用 Java ArrayList 来存储卡片。但是对卡片进行忽略大小写字符串检查,问题是它正在删除名称为“Trooper”的卡片,但它总是在玩家手中留下一张士兵卡片。我想让它留下所有的士兵卡。
Java 控制台中的卡片显示:Trooper Agent Agent Agent Trooper Trooper Jave 代码:
if(mouseCursor.getRectangle().intersects(placeList.get(i).getRectangle()) && mouseCursor.isPressed() ) {
if(attackPower >= placeList.get(i).getAttackPower()) {
for(int j = 0 ; j < playerDisplayDeck.size();j++) {
System.out.println(playerDisplayDeck.get(j).getName());
}
for(int j = 0 ; j < playerDisplayDeck.size();j++) {
if(playerDisplayDeck.get(j).getName().equalsIgnoreCase("trooper")) {
playerDisplayDeck.remove(j);
}
}
for(int j = 0 ; j < playerDisplayDeck.size();j++) {
System.out.println(playerDisplayDeck.size());
}
attackPower = attackPower - placeList.get(i).getAttackPower();
}
}
【问题讨论】:
-
是时候启动您最喜欢的 IDE 调试器了,使用它来单步调试代码,在单步执行时检查关键变量,并找出问题发生的原因。
-
@Progman 非常感谢该链接。修复它并立即了解原因!
标签: java