好的,在第二个循环中,您将覆盖先前设置的值,因为从相同的偏移量i = 0开始.
我建议类似的东西:
for(int i = totalHumanPlayers; i < (totalHumanPlayers + totalComputerPlayers); i++)
您可以像在阵列中那样持有两种类型的汽车(声明阵列为MainCar类型),请记住MainCar可以是ComputerCar或PlayerCar,您需要强制转换以使用其中一种(如果您需要像这样访问PlayerCar或ComputerCar的特定成员:
PlayerCar玩家=(PlayerCar)carsArray [x];
但是在您的情况下,如果您只需要MainCar上的坐标,则可以直接访问它们(如果它们当然是MainCar的成员),例如:
carsArray [i] .location.x
要么
carsArrays [i] .x
只要记住正确初始化数组即可. (不要重叠您的数据)
编辑:
为了确定汽车是一种类型还是另一种类型,请使用instanceof运算符,下面是一个示例:
如果(PlayerCar的carVar实例){
?????PlayerCar玩家=(PlayerCar)carVar;
?}