Implizit typisierte Arrays (C#-Programmierhandbuch)Implicitly Typed Arrays (C# Programming Guide)

Sie können ein implizit typisiertes Array erstellen, in dem der Typ der Arrayinstanz von den im Arrayinitialisierer angegebenen Elementen abgeleitet wird.You can create an implicitly-typed array in which the type of the array instance is inferred from the elements specified in the array initializer. Die Regeln für implizit typisierte Variablen gelten auch für implizit typisierte Arrays.The rules for any implicitly-typed variable also apply to implicitly-typed arrays. Weitere Informationen zu finden Sie unter Implizit typisierte lokale Variablen.For more information, see Implicitly Typed Local Variables.

Implizit typisierte Arrays werden in der Regel in Abfrageausdrücken zusammen mit anonymen Typen sowie Objekt- und Auflistungsinitialisierern verwendet.Implicitly-typed arrays are usually used in query expressions together with anonymous types and object and collection initializers.

Die folgenden Beispiele zeigen, wie ein implizit typisiertes Array erstellt wird:The following examples show how to create an implicitly-typed array:

class ImplicitlyTypedArraySample
{
    static void Main()
    {
        var a = new[] { 1, 10, 100, 1000 }; // int[]
        var b = new[] { "hello", null, "world" }; // string[]

        // single-dimension jagged array
        var c = new[]   
        {  
            new[]{1,2,3,4},
            new[]{5,6,7,8}
        };

        // jagged array of strings
        var d = new[]   
        {
            new[]{"Luca", "Mads", "Luke", "Dinesh"},
            new[]{"Karen", "Suma", "Frances"}
        };
    }
}

Beachten Sie im vorherigen Beispiel, dass bei implizit typisierten Arrays auf der linken Seite der Initialisierungsanweisung keine eckigen Klammern verwendet werden.In the previous example, notice that with implicitly-typed arrays, no square brackets are used on the left side of the initialization statement. Beachten Sie auch, dass verzweigte Arrays ebenso wie eindimensionale Arrays mithilfe von new [] initialisiert werden.Note also that jagged arrays are initialized by using new [] just like single-dimension arrays.

Implizit typisierte Arrays in ObjektinitialisierernImplicitly-typed Arrays in Object Initializers

Beim Erstellen eines anonymen Typs, der ein Array enthält, muss das Array im Objektinitialisierer des Typs implizit typisiert werden.When you create an anonymous type that contains an array, the array must be implicitly typed in the type's object initializer. Im folgenden Beispiel ist contacts ein implizit typisiertes Array aus anonymen Typen, von denen jeder ein Array mit dem Namen PhoneNumbers enthält.In the following example, contacts is an implicitly-typed array of anonymous types, each of which contains an array named PhoneNumbers. Beachten Sie, dass das Schlüsselwort var nicht in den Objektinitialisierern verwendet wird.Note that the var keyword is not used inside the object initializers.

var contacts = new[] 
{
    new {
            Name = " Eugene Zabokritski",
            PhoneNumbers = new[] { "206-555-0108", "425-555-0001" }
        },
    new {
            Name = " Hanying Feng",
            PhoneNumbers = new[] { "650-555-0199" }
        }
};

Siehe auchSee Also

C#-ProgrammierhandbuchC# Programming Guide
Implizit typisierte lokale VariablenImplicitly Typed Local Variables
ArraysArrays
Anonyme TypenAnonymous Types
Objekt- und AuflistungsinitialisiererObject and Collection Initializers
varvar
LINQ-AbfrageausdrückeLINQ Query Expressions