Gebäude ein Wörterbuch der Grafen von Elementen in einer Liste

Ich habe eine Liste mit einer Reihe von Zeichenfolgen, die auftreten können, mehr als einmal. Ich würde gerne diese Liste und erstellen ein Wörterbuch der Objekte in der Liste als Schlüssel und die Anzahl Ihrer vorkommen als Wert.

Beispiel:

List<string> stuff = new List<string>();
stuff.Add( "Peanut Butter" );
stuff.Add( "Jam" );
stuff.Add( "Food" );
stuff.Add( "Snacks" );
stuff.Add( "Philosophy" );
stuff.Add( "Peanut Butter" );
stuff.Add( "Jam" );
stuff.Add( "Food" );

und das Ergebnis wäre ein Wörterbuch mit:

"Peanut Butter", 2
"Jam", 2
"Food", 2
"Snacks", 1
"Philosophy", 1

Habe ich eine Möglichkeit, dies zu tun, aber es scheint nicht, wie ich die Verwendung der guten Sachen, die in C# 3.0

public Dictionary<string, int> CountStuff( IList<string> stuffList )
{
    Dictionary<string, int> stuffCount = new Dictionary<string, int>();

    foreach (string stuff in stuffList) {
        //initialize or increment the count for this item
        if (stuffCount.ContainsKey( stuff )) {
            stuffCount[stuff]++;
        } else {
            stuffCount.Add( stuff, 1 );
        }
    }

    return stuffCount;
}
InformationsquelleAutor Ryan Ische | 2009-03-26
Schreibe einen Kommentar