【问题标题】:Convert list to array C#将列表转换为数组 C#
【发布时间】:2016-11-08 17:08:09
【问题描述】:

你能告诉我如何在 C# 中将元素从列表放入二维数组吗?

tura = new string[howManyWords, 6];
    howManyWords = 0;

    foreach (words word in wc.words)
    {
        if (word.CategoryNumber == scb.Category)
        {
            tura[howManyWords] ......; howManyWords++;
        }
    }

我有一个由 XML 文件组成的列表。我在 Unity 工作。

   <?xml version="1.0" encoding="utf-8"?>
<WordCollection>
  <Words>
    <Word name="$mezczyzna">
      <CategoryNumber>1</CategoryNumber>
      <PolishName>mężczyzna</PolishName>
      <EnglishName>a man</EnglishName>
      <AudioName>man.mp3</AudioName>
      <ImageName>man</ImageName>
      <ImageLocalisationWidth>200</ImageLocalisationWidth>
      <ImageLocalisationHigh>700</ImageLocalisationHigh>
    </Word>
  </Words>
</WordCollection>

【问题讨论】:

标签: c# arrays list


【解决方案1】:

由于我们认为您指的是字典和 ContentNumber,因此这里是一个示例:

void Main()
{
    List<Word> Words = new List<UserQuery.Word> { new Word { CategoryNumber = 0, EnglishName = "WORD1" }, new Word { CategoryNumber = 1, EnglishName = "WORD2" }, new Word { CategoryNumber = 1, EnglishName = "WORD3" } };

    Dictionary<CategoryTypes, List<Word>> categoryWords = Words.GroupBy(word => word.CategoryNumber).ToDictionary(x => (CategoryTypes)x.Key, x => x.ToList());

    if (categoryWords.ContainsKey(CategoryTypes.Category2))
    {
        List<Word> words = categoryWords[CategoryTypes.Category2];

        for (int i = 0; i < words.Count; i++)
        {
            Console.WriteLine(words[i].EnglishName);
        }
    }
}

class Word
{
    public int CategoryNumber { get; set; }
    public string EnglishName { get; set; }
}

enum CategoryTypes
{
    Category1 = 0,
    Category2 = 1
}

然后您可以通过枚举类型调用字典 categoryWords,然后只有您的单词列表。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-30
    • 2014-07-13
    • 1970-01-01
    • 2013-11-06
    • 2020-10-06
    • 1970-01-01
    • 2015-08-26
    相关资源
    最近更新 更多