【发布时间】:2020-05-12 10:55:18
【问题描述】:
这里我有两个数组对象,但每个都包含不同类型的对象。
children 包含一个 State 对象//看起来像这样 Nh3 Kf6 20. Ng1 Kg6 21. Nh3 Kf5 22. Rb1
enemyLocation 是一个String name 和String position 的对象,// name 无关紧要,location 看起来像这样 //f5,可以是字母/数字的任意组合。
我需要检查孩子身上是否有任何敌人。位置
例如:
child = Nh3 Kf6 20. Ng1 Kg6 21. Nh3 Kf5 22. Rb1
enemy.position = f5
这返回 null,但是我希望它返回 true,因为 child 在 Kf5 中包含 f5。我知道这是不同的,但如果找到这种组合,我想返回 true。区分大小写。
for (State child: children) {
for (Enemy enemy: enemyLocation) {
System.out.println("children: " + child.toString()); // Nh3 Kf6 20. Ng1 Kg6 21. Nh3 Kf5 22. Rb1
System.out.println("enemyLocation: " + enemy.position.toString()); // f5
if (child.toString().contains(enemy.position.toString())) {
target = child;
}
}
}
我面临的另一个问题是嵌套循环,我不确定我该如何乐观;我想用 如下所示,但这只会返回真/假,而不会告诉我哪个孩子是那个=敌人
if (children.toString().contains(enemy.toString()))
【问题讨论】: