C# 将多个数组合并为一个数组
C# merge multiple arrays to one array
我从 jagged array
中得到 x 数量的 Arrays
,如下所示:
string[] sArray1 = {"FB1" , "FB(1)" , "V1.0"};
string[] sArray2 = {"FB1" , "FB(1)" , "" , "V1.0"};
string[] sArray3 = {"FB2" , "FB(2)" , "V5.2"}
我想在
时将它们合并为一个 Array
sArray1[0] == sArray2[0] && sArray1[1] == sArray2[1]
合并后的 Array
应该是这样的
string[] sArray12 = {"FB1" , "FB(1)" , "V1.0" , "V1.0"};
我已经用 Array.CopyTo()
试过了;和 Enumerable.Union<>
。
Enumerable.Union<>
的问题在于,当字段 3 和 4 具有相同的值时,只有字段 3 会写入 Array
。
有没有办法让两个值都被写入?或者有更好的方法来解决我的问题吗?
也许是这样的
if (sArray1[0] == sArray2[0] && sArray1[1] == sArray2[1])
{
var sArray12 = sArray1.Concat(sArray2.Skip(2))
.Where(x => !string.IsNullOrEmpty(x)) //probably
.ToArray();
}
我从 jagged array
中得到 x 数量的 Arrays
,如下所示:
string[] sArray1 = {"FB1" , "FB(1)" , "V1.0"};
string[] sArray2 = {"FB1" , "FB(1)" , "" , "V1.0"};
string[] sArray3 = {"FB2" , "FB(2)" , "V5.2"}
我想在
时将它们合并为一个Array
sArray1[0] == sArray2[0] && sArray1[1] == sArray2[1]
合并后的 Array
应该是这样的
string[] sArray12 = {"FB1" , "FB(1)" , "V1.0" , "V1.0"};
我已经用 Array.CopyTo()
试过了;和 Enumerable.Union<>
。
Enumerable.Union<>
的问题在于,当字段 3 和 4 具有相同的值时,只有字段 3 会写入 Array
。
有没有办法让两个值都被写入?或者有更好的方法来解决我的问题吗?
也许是这样的
if (sArray1[0] == sArray2[0] && sArray1[1] == sArray2[1])
{
var sArray12 = sArray1.Concat(sArray2.Skip(2))
.Where(x => !string.IsNullOrEmpty(x)) //probably
.ToArray();
}