我有很多Int32
个变量我想要选择哪个int
我要检查。
是否可以创建此行并使用多变量选择变量?
Int32 redleft0 = 0;
Int32 redleft1 = 0;
Int32 redleft2 = 0;
Int32 redleft3 = 0;
Int32 redleft4 = 0;
Int32 redleft5 = 0;
Int32 blueleft0 = 0;
Int32 blueleft1 = 0;
Int32 blueleft2 = 0;
Int32 blueleft3 = 0;
Int32 blueleft4 = 0;
Int32 blueleft5 = 0;
redorblue = "red";
for (int i = 0; i < count; i++)
{
String checkleftint = (redorblue + "left" + i);
if (checkleftint < 0)
{
}
}
答案 0 :(得分:7)
你应该使用数组 - 或者更确切地说是两个 - 在这里:
var red = new int[]{0,0,0,0,0,0};
var blue = new int[]{0,0,0,0,0,0};
var arrayToUse = redorblue == "red" ? red : blue;
for (int i = 0; i < count; i++)
{
var value = arrayToUse[i];
// ....
}
答案 1 :(得分:0)
使用带有键和值的数组或字典,以便您可以使用键
提取值答案 2 :(得分:0)
这不会那样。要么不使用单独的变量,而是使用数组:
int[,] vars = new int[2,6] { { 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0 } };
// int[0,*] would be redleft and int[1,*] would be blueleft
或使用Dictionary<string, int>
答案 3 :(得分:-1)
如果您使用enum,则可以使用,例如:
enum values { redleft0 = 0; redleft1 = 120; redleft2 = 13; }
使用enum
所以你所做的只是:
for (int i = 0; i < count; i++)
{
if(i == values.redLeft0){
...
}
}
使用enum
,您可以将所需的名称与您想要的号码相关联。
如果这不是您所要求的,请澄清。