我是电子工程师。
我在为C#中的Windows窗体应用程序制作的程序中遇到了麻烦,需要您的帮助来处理它。我有两个具有相同大小的字符串[num]和[work]的列表,并且[num]的每个值都对应于[work],如下所示:
num work
11 0,4
23 0,5
36 0,333
49 13
...
然后,我得到的字符串列表[lnum]几乎类似于[num],但数字较少,如下所示:
lnum
23
36
49
...
我想做的就是获取对应于lnum中存在的数字的对应值,如下所示:
lnum lwork
23 0,5
36 0,333
49 13
...
我开发的代码是这样的:
List<string> num = new List<string>();
List<string> work = new List<string>();
List<string> lnum = new List<string>();
List<double> lwork = new List<double>();
for (int i = 0; i < num.Count; i++)
{
for (int j = 0; j < lnum.Count; j++)
{
if(lnum[j] == num[i])
{
lwork.Add(Convert.ToDouble(work[j].ToString()));
}
}
}
现在的问题是,如果数字列表中包含很多变量,那么我似乎并没有以严格的方式进行操作。我做错了什么?做这个的最好方式是什么?我需要对代码进行哪些更改?
如果您需要更多说明,我将尝试更详细地说明。对不起,我在英语中遇到任何错误,我是葡萄牙语,英语不是我的自然语言,如果标题不能更好地描述我的奋斗精神,我将提出歉意。
我真的很需要您的帮助,我将永远感激您的帮助。希望对大家来说都是最好的周末!
根据您的需要建立字典num
并work
列出:
Dictionary<string,string> lookup = new Dictionary<string,string>();
for(int i = 0; i < num.Count; i++)
lookup.Add(num[i], work[i]);
使用此查找字典,可以轻松创建新配对:
for(int i = 0; i < lnum.Count; i++)
{
string lkey = lnum[i];
string lwork = lookup[lkey];
....
}
当然,您应该添加一些错误处理,例如,如果lnum
包含在中找不到的字符串lookup
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句