C# 在 For 循环中按值更改变量名称

C# Change Variable Name By Values in For Loop

我有 4 个 string List 变量:

var cat1 = new List<string>();
var cat2 = new List<string>();
var cat3 = new List<string>();
var cat4 = new List<string>();

if (value== "1")
{
    cat1.Add(value.ToString());
}

else if (value== "2")
{
    cat2.Add(value.ToString());
}

else if (value == "3")
{
    cat3.Add(value.ToString());
}

else if (value== "4")
{
    cat4.Add(value.ToString());
}

我可以通过在每个循环增量中更改变量名称来使用 for-loop 而不是使用 4 if-else 吗?

如:

for (int i = 1; i < 5; i++)
{
    cat[i].Add(value.ToString());
}

将列表放在数组中,并在 for 循环中使用从 0 到 4 的索引:

var cat1 = new List<string>();
var cat2 = new List<string>();
var cat3 = new List<string>();
var cat4 = new List<string>();

var cat = new[] { cat1, cat2, cat3, cat4 };

for (int i = 0; i < 4; i++)
{
    cat[i].Add(value.ToString());
}