我有下面的代码,我想创造一些守门员的对象,那么一些后卫的对象,然后中场等等。 我的目的是让我整数增量创建的每个对象后使用if语句来检查我是什么样的价值,并相应地分配球员类型。递增而无需环路
目前,我得到我的所有对象早在守门员的对象,这意味着我不递增。任何想法如何我可以解决这个问题?
//create different types of player
int i = 0;
if (i < 2)
{
i+=1;
//create gk
p = new Goalkeeper(fname, lname, saves, tackles, assists, goals, minutesplayed, fitness);
}
else if (i >= 2 && i < 9)
{
i++;
//create d
p = new Defender(fname, lname, headerswon, tackles, assists, goals, minutesplayed, fitness);
}
else if (i >= 9 && i < 16)
{
i++;
//crete mf
p = new Midfielder(fname, lname, passsuccessrate, tackles, assists, goals, minutesplayed, fitness);
}
else
{
i++;
//create striker
p = new Striker(fname, lname, shotsontarget, tackles, assists, goals, minutesplayed, fitness);
}
return p; //return the randomly generated player
此代码将只创建一个对象(取决于i的值,它总是为0),然后返回该对象。听起来像你需要一个静态变量我。 – Dave
你是否有任何围绕这些循环的外部循环。如果是的话,确保你没有初始化i = 0每次在 –
这看起来不像完整的代码。您在顶部将'i'设置为'0',因此在返回之前只有第一个'if'会被输入。 – Equalsk