通过列表迭代

时间:2013-11-21 09:53:16

标签: c# list

我有2个列表:

  1. 列表l
  2. 列表d
  3. 1)列表中填充了文本。第二个列表中插入了元素。 WordCount是下面的一个类

    class WordCount
    {
    string word;
    int count;
    }
    

    我有两个问题: 1.如果我有下面的foreach循环,

    foreach (WordCount currWord in d)
    {
    currWord.count+=1;
    }
    

    这是将每个WordCount的count变量递增1的正确代码吗?

    第二个问题,我将元素插入List d,如何按字母顺序word插入新元素?

    我问2个非常具体和基本的问题,可以帮助我解决问题。我不会详细说明我的问题是什么,因为最后的SO问题引起了很多不需要的编码答案。如果有人可以帮助我,那么我可以做其余的事情来解决我的编码问题。

2 个答案:

答案 0 :(得分:5)

1)是或你可以说

currWord.count++;

2)您可以尝试使用SortedList来实现此目标

SortedList<string, WordCount> yourList= new SortedList<string, WordCount>();
yourLIst.Add(myword.word, myword);

但这有点多余。将计数作为列表中的值并使用单词本身作为关键字会更好。这消除了对自定义类的需求

答案 1 :(得分:4)

是的,这是正确的方法。您可以将其缩短为:

currWord.count++;

SortedList<TKey, TValue>是一个选项,如果你想将元素插入一个列表并让它们为你排序。

See the MSDN Documentation on SortedList here