我是编程新手,更具体的是词典。我试图使用1 for循环添加键,并使用另一个for循环添加值。
Dictionary<string, string> myDictionary= new Dictionary<string, string>();
for(int i=0; i<13; i++)
for(int j=32;j<45; j++)
myDictionary.Add(Convert.ToString(i)+"A", Convert.ToString(j)+"B");
我想拥有13个键和13个值,但这会产生更多我想要的结果。
有人可以帮忙吗?
答案 0 :(得分:3)
只需一个循环并添加以下项目:
for(int i=0; i<13; i++)
{
myDictionary.Add(Convert.ToString(i)+"A", Convert.ToString(i + 32)+"B");
}
您也不必致电Convert.ToString
,字符串连接就可以解决这个问题:
for (int i = 0; i < 13; i++)
myDictionary.Add(i + "A", (i + 32) + "B");
您需要在两个迭代变量上进行循环,而不是嵌套for循环。你也可以 做:
for (int i = 0, j = 32; i < 13 && j < 45; i++, j++)
myDictionary.Add(i + "A", j + "B");
答案 1 :(得分:3)
只是为了好玩,一个Linq投影:
var myDictionary =
Enumerable.Range(0, 13)
.ToDictionary(i => i + "A", i => (i + 32) + "B");
答案 2 :(得分:0)
我不确定value
的目的是什么,是从这样的循环生成的。但是,您实际上可以执行以下操作:
var random = new Random();
var container = new Dictionary<string, string>();
for(var i = 0; i < 13; i++)
container.Add(i + "A", random.Next() + "B");
该代码将自动提供零到十三的数字键。此外,该值将被随机化,并在这些随机值的末尾添加B
。