【发布时间】:2016-05-20 08:31:01
【问题描述】:
如何分隔和存储 string[] 值? 我从复选框中多次选择了项目。检查后,我得到了父子代码,并想将其中两个分开。
复选框项目存储在字符串[] selectedItems
需要像这样存储另一个变量:
child[0]=120000
parent[0]=100000
child[1]=352000
parent[1]=100000
【问题讨论】:
-
你期望的结果是什么?
如何分隔和存储 string[] 值? 我从复选框中多次选择了项目。检查后,我得到了父子代码,并想将其中两个分开。
复选框项目存储在字符串[] selectedItems
需要像这样存储另一个变量:
child[0]=120000
parent[0]=100000
child[1]=352000
parent[1]=100000
【问题讨论】:
var temp = seledItems.Select(item =>
{
string[] parts = item.Split('-');
return new { Child = int.Parse(parts[0], Parent = int.Parse(parts[1])};
});
int[] child = temp.Select(x => x.Child).ToArray();
int[] parent = temp.Select(x => x.Parent).ToArray();
这首先会创建一系列对象,其中包含来自所选项目的 Child 和 Parent 值。
然后它将其转换为您在问题中需要的两个数组 child 和 parent。
替代方案可能如下所示:
int[] child = new int[seledItems.Length];
int[] parent = new int[seledItems.Length];
for(int i = 0; i<seledItems.Length; i++)
{
string[] parts = seledItems[i].Split('-');
child[i] = int.Parse(parts[0]);
parent[i] = int.Parse(parts[1]);
}
【讨论】: