我有下面的代碼,我想創造一些守門員的對象,那麼一些後衛的對象,然後中場等等。 我的目的是讓我整數增量創建的每個對象後使用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