簡體   English   中英

C#列表 <string, list<string> &gt;怎么樣?

[英]C# list<string, list<string>> how to?

我花了一些時間在互聯網上尋找解決方案,但我在C#的技能處於初級水平,我沒有找到任何方法去做我想做的事情。

所以情況如下:

我有一個Web服務,它返回一個對象給我,在這個對象中有一個二維表。 我想要做的是沿着這個表運行並將這些值放在List 為了說明這是一個例子和我已經擁有的:

// creation of a list like : List <String, List<String>> myList
for (int i = 0; i < outPut.errors.Length; i++)
{
    string error = outPut.errors[i].data.label;
    //myList.add(error);
    if (outPut.errors[i].data.label != "" && outPut.errors[i] != null)
    {
         for (int j = 0; j < outPut.errors[i].data.corrections.Length; j++)
         {
              string corrections  = outPut.errors[j].data.corrections[0][j].ToString();
              //myList.add(corrections)
         }  
    }
}

所以在這個例子中我創建了一個二維List,其中第一個參數是一個String,第二個是List(就像一個二維表會有tab [x] [y],其中一個X有多個Y.

顯然在C#中你必須知道創建二維表的確切大小,我們永遠不會知道這個表的大小。

那么是否有可能創建一個列表,例如我想要這樣做或者我應該以另一種方式做到這一點?

要創建二維列表,請使用List<List<string>>定義一個列表,其中每個條目都是包含字符串的列表。 您需要創建每個“行”列表,它們不會自動為您創建。

但是,在這種情況下,這並不是您想要的特殊標簽字段。 在這種情況下,您應該創建一個帶有字符串標簽和列表的對象,然后列出該對象。 或者,如果您希望通過標簽查找並且不會有重復的標簽,您可以考慮使用Dictionary<string, List<string>>

這可以通過使用如下的元組來實現:

List<Tuple<String, List<String>>>

看看這里的元組的詳細信息https://msdn.microsoft.com/en-us/library/system.tuple(v=vs.110).aspx基本上它是一個存儲元組的類,幾乎是你的之后。 第一項是String,第二項是List

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM