"for"ステートメントの下で複数のリストを作成する方法はありますか?例えば、monster1、monster2、monster3などです。私はの下にそれを示しました。これは、コードの中に有益な名前を入れたい場所です。c#forステートメント内に複数のリストを作成する
生成する必要があるリストの数は以前に定義されていますが、問題はありませんが、「エラーCS0128: `...という名前のローカル変数がこのスコープで既に定義されています"リスト名(この場合はmonsterList)を真似するために、inbuiltカウンタを変数に基づいてリスト名に代入しようとします。
私はこれを行うことができる別の方法があるので、生成する必要があるリストの数に関係なく、それらを作成し、この設定パターンに従って名前を付けます。
以下のコードは、私が新しいことを繰り返すことを望んでいるものです(私は新しいので、おそらくひどく非効率的です、私は今、私が今したいことをやろうとしています):
for (int monstCounter = 2; monstCounter < totalTimes; monstCounter++)
{
Console.WriteLine();
string monsterLists = "Monster " + monstCounter;
string monsterList = "monsters"+monstCounter;
Console.WriteLine(monsterLists);
p = 0;
foreach (Monster aMonster in monsters)
{
if (monsters[p].MonsterName == monsterLists)
y = p;
p++;
}
y = monsters[y].MonsterPopu;
//Create a list of individuals.
List<MonsterStatistics> **This is where I want an incrimental name** = new List<MonsterStatistics>();
totalTimes1 = y;
counter1 = 1;
for (int b=0; b < totalTimes1; b++)
{
// Add monsters to the list.
monsterList.Add(new MonsterStatistics() {oldAge = rndNum.Next(1,100), name = "Name"+counter1, coupled = false, genderGen = rndNum.Next(0,2)});
counter1++;
}
foreach (MonsterStatistics aMonster in monsterList){
if(aMonster.genderGen == 0)
aMonster.gender = "Male";
else if (aMonster.genderGen == 1)
aMonster.gender = "Female";
else
aMonster.gender = "Genderless";
aMonster.age = rndNum.Next(0,aMonster.oldAge);
Console.WriteLine(aMonster.name + " Age: " + aMonster.age + "/" + aMonster.oldAge + " " + aMonster.gender);
}
}
:あなたはoは辞書を使用し、各モンスターは、一意のキー(文字列)をリストするために割り当てる、のようなものであるCAND何
あなたが望むように多くのリストを追加できますか? – zaitsman