2016-11-08 181 views
0

很不錯的問題(如果您無法辨別,我對C#有點新鮮感; P)。具體來說,我試圖將整行(1D字符串數組)分配給C#中的二維字符串數組。在C++(如果它幫助)相當於將在C中分配二維數組中的一維數組#

vector< vector<string> > 2dArray; 
vector<string> 1dArray({"Aa","Bb","Cc"}); 
for (int i = 0; i < 2; i++) { 
    2dArray.push_back(1dArray); 
} 

我不認爲這有差別,但一維數組實際上是使用分割功能,我是從控制檯讀取一行視爲一維字符串陣列:Console.ReadLine().Split()

我意識到我可以訴諸分配單獨的元素,但如果有一個解決方案讓我可以逐行進行,那麼我想學習如何使用它一。

+0

你想讓你的二維數組對每一行都有相同的值嗎? –

回答

0

您應該在.NET框架中調查Generics。特別是List<T>其中T是你的情況下的string。另外,你可以做一個Dictionary<>

var list2D = new List<List<string>>(); 
var list1D = new List<string> { "Aa", "Bb", "Cc"}; 
for(var i = 0; i< 2; i++) { 
    list2D.Add(list1D); 
} 
0

第一陣列可以通過一個簡單的數組表示:

string[] array1 = { "Aa","Bb","Cc" }; 

第二個可以用各種generic collections表示,根據您的需求,在這個簡單的案例可以是一個List。

List <string[]> list1 = new List<string[]>(); 

list1.Add(array1);