各位高手,下面的例子中,x得到的是 “1, 2, 3″,”4, 5, 6″这些字符串,问一下怎么样根据xArr[]得到a,b,而不是a,b的内容?
背景是有N个a,b这样的字符串变量,需要做同样的处理,因此希望通过一个数组引用这些变量来循环。
string a = “1, 2, 3”;
string b = “4, 5, 6”;
string xArr[] = {a, b}
foreach (string x in Arr)
{
console.writeline(x);
}
谢谢!
背景是有N个a,b这样的字符串变量,需要做同样的处理,因此希望通过一个数组引用这些变量来循环。
string a = “1, 2, 3”;
string b = “4, 5, 6”;
string xArr[] = {a, b}
foreach (string x in Arr)
{
console.writeline(x);
}
谢谢!
解决方案
10
你可以用Dictionary,既可以给变量取名,又可以达到你更改的目的:
var dict = new Dictionary<string, string>()
{
{"a", "1, 2, 3" },
{"b", "4, 5, 6"},
};
foreach(var key in dict.Keys.ToList())
{
dict[key] = "xxx" + dict[key];
}
string updated = dict["a"]; // "xxx1, 2, 3"
29
string A = "1, 2, 3";
var X = A.Split(",").Select(x => Convert.ToInt32(x)).ToArray();
Console.WriteLine(X.GetType());
for (var i = 0; i < X.Length; i++)
{
Console.WriteLine(X[i]);
}

1
public int[] ConvertTo(string str)
{
return str.Split(",").Select(x => Convert.ToInt32(x)).ToArray();
}
////////////////////////////////////////////////
X=ConvertTo(A);
Y=ConvertTo(B);
...
////////////////////////////////////////////////