Feedback

C# - Generator Enumerable Extension Methode

Veröffentlicht von am 05.12.2009
(2 Bewertungen)
Mit dieser Extension kann man über eine Generatorfunktion eine Liste mit diversen daten füllen.

Benötigte usings sind


using System;
using System.Collections.Generic;
GFU-Schulungen  [Anzeige]

ASP.NET 2.0 und 3.5

Dieser Kurs vermittelt Ihnen alle Erweiterungen von Microsoft ASP.NET 2.0. Zu diesen zählen u. a. Data Bindung, Master Pages, und Security.

C# Aufbaukurs

Sie haben grundlegende .NET- und C#-Kenntnisse und und wollen diese nun erweitern. Der Aufbaukurs C# führt Sie ein die Arbeit mit Interfaces und Delegates, Generics und Parallel Computing.

public static class Extension
{

    public static void Generate<T>(this ICollection<T> coll, Func<T> generater, long CountOfItemsToGenerate)
    {
        if (generater == null)
            throw new ArgumentNullException("generater");

        if (coll == null)
            throw new NullReferenceException("The collection cannot be null.");

        ICollection<T> tempColl = coll;

        for (int i = 0; i < CountOfItemsToGenerate; i++)
        {
            tempColl.Add(generater());
        }
    }

}

//Benutzung
 class Program
    {
        static void Main(string[] args)
        {

            List<int> liste = new List<int>();
            liste.Generate(() => new Random().Next(1, 20), 10);
            
            Console.ReadKey();
            
        }
    }


2 Kommentare zum Snippet

Spooky schrieb am 09.12.2009:
Off-by-one error in der for-Schleife.
Christopher Kk schrieb am 10.12.2009:
Ja viele Dank für den Hinweis.
 

Logge dich ein, um hier zu kommentieren!