[英]Separate array in sub arrays in C#
我在C#中有以下數組:
string[][] arrayofArrays = getArray();
我知道arrayofArrays中的數組的長度為2。我的問題如下: 是否可以將主體數組“拆分”或“分離”成兩個數組?
謝謝。
編輯: 我想知道是否有一種方法已經在C#中實現,我知道如何使用算法來實現。
編輯2:這是我需要的一個示例:
// here are the data:
string[][] arrayofArrays = {{"1", "a"}, {"2", "b"}, {"3", "c"}};
//here is what I need as output:
string[] array1 = {"1", "2", "3"};
string[] array2 = {"a", "b", "c"};
如果我理解正確,則可以執行以下操作:
string[] firstArray=Array.ConvertAll(arrayofArrays,a => a[0]);
string[] secondArray=Array.ConvertAll(arrayofArrays,a => a[1]);
還有一個變體:
var array1 = arrayOfArrays.Select(a => a[0]).ToArray();
var array2 = arrayOfArrays.Select(a => a[1]).ToArray();
對於它的價值,此LINQ查詢應該執行您想要的操作:
int numArrays = 2;
string[][] arrayofTwoArrays = arrayofArrays
.Select((arr, index) => new { arr, index })
.GroupBy(x => (x.index + 1) % numArrays, x => x.arr)
.Select(g => g.SelectMany(x => x).ToArray())
.ToArray();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.