none
Array of Objects RRS feed

  • Frage

  • Hallo,

    Ich bin zurzeit etwas verwirrt mit den Arrays. Es gibt einmal normale Arrays und zustätzlich noch Arrays von Objekten? Ich habe zb auf meinem Blatt das hier zu stehen:

    Account[] myAccountArray // or
    Account[] myAccountArray = new Account[5]
    
    myAccountArray [0] = new Account (112000, "Current" , 50);
    Es steht: 

    "Arrays are fixed length groups of type related data. The data could be objects of type String or

    objects of instantiated from a user defined class such as Account"

    Wieso geht man nicht einfach in die Klasse Account und erstellt ein Array wie zb
    string[] myAccountArray = new string["test"] ?


    • Bearbeitet Enes97 Samstag, 16. Mai 2015 12:19
    Samstag, 16. Mai 2015 12:18

Antworten

  • Hallo Enes97,

    du kannst - wie Holger bereits gesagt hat - ein Array für jeden beliebigen Datentypen erstellen.

    Allgemein:  Also beide folgenden Zeilen wären gültig:

    int[] myArray = new int[20]; // Länge vorgegeben; inhalte unbekant
    int[] myArray2 = new int[] { 1, 2, 3, 4, 5, 6 }; //Länge: 6; Inhalt: z.B. [0] = 1; [1] = 2
    
    myComplexClass[] myArray3 = new myComplexClass[10]; //Wie "myArray", aber mit Klasse statt zahl.
    
    
    

    Information:  Der Zugriff ist ganz einfach:

    int[] myArray = new int[20];
    
    // Wert in Array setzen (nicht vergessen, der Index ist nullbasiert: das erste Element hat den Index 0...)
    myArray[0] = 10; // Das erste Feld bekomment den Wert 10
    
    // Wert aus dem Array auslesen
    int n = myArray[0]; // n hat jetzt den Wert 10
    

    Hinweis: Solltest du einen ungültigen Index wählen (kleiner als 0 oder größer als der maximale Index (Länge-1)), dann wird eine Exception (OutOfRangeException) geworfen.

    Die Länge gibt die Anzahl der Felder an, also im obigen Beispiel wäre die Länge:  20

    Das erste Index ist 0, der größte ist 19!!


    © 2015 Thomas Roskop

    Germany // Deutschland

    Samstag, 16. Mai 2015 13:31

Alle Antworten

  • Hallo,
    zunächst gibt es keine 2 Arten von Arrays, jedes Array beinhaltet Felder von Objekten. Dabei ist es vollkommen egal, ob es sich um einen int, einen string oder um ein Account Objekt handelt. Du kannst sogar ein Array in einem Array hinzufügen.

    Und was deine Frage angeht, verstehe ich den Sinn nicht! Warum will jemand ein string[] (dazu noch falsche Syntax) in einer Klasse erstellen, wenn es um ein Array für diese Klasse selbst geht???!!! Hier bitte noch den Context nachliefern, sonst ist die Frage nicht zu beantworten.


    Viele Grüße Holger M. Rößler

    Samstag, 16. Mai 2015 13:04
  • "wenn es um ein Array für diese Klasse selbst geht?"

    Was ist denn damit gemeint? Ich habe das generell nicht verstanden, weshalb man so etwas macht bzw benutzt. 

    Was versteh ich unter "Array für eine Klasse"`?

    Ich kenn Array als eine art Liste, in der man zahlen oder andere daten "reintut" und sie auch aufrufen kann.

    Samstag, 16. Mai 2015 13:20
  • Hallo Enes97,

    du kannst - wie Holger bereits gesagt hat - ein Array für jeden beliebigen Datentypen erstellen.

    Allgemein:  Also beide folgenden Zeilen wären gültig:

    int[] myArray = new int[20]; // Länge vorgegeben; inhalte unbekant
    int[] myArray2 = new int[] { 1, 2, 3, 4, 5, 6 }; //Länge: 6; Inhalt: z.B. [0] = 1; [1] = 2
    
    myComplexClass[] myArray3 = new myComplexClass[10]; //Wie "myArray", aber mit Klasse statt zahl.
    
    
    

    Information:  Der Zugriff ist ganz einfach:

    int[] myArray = new int[20];
    
    // Wert in Array setzen (nicht vergessen, der Index ist nullbasiert: das erste Element hat den Index 0...)
    myArray[0] = 10; // Das erste Feld bekomment den Wert 10
    
    // Wert aus dem Array auslesen
    int n = myArray[0]; // n hat jetzt den Wert 10
    

    Hinweis: Solltest du einen ungültigen Index wählen (kleiner als 0 oder größer als der maximale Index (Länge-1)), dann wird eine Exception (OutOfRangeException) geworfen.

    Die Länge gibt die Anzahl der Felder an, also im obigen Beispiel wäre die Länge:  20

    Das erste Index ist 0, der größte ist 19!!


    © 2015 Thomas Roskop

    Germany // Deutschland

    Samstag, 16. Mai 2015 13:31