Feld (Datentyp): Unterschied zwischen den Versionen
Kowa (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Kowa (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| Zeile 1: | Zeile 1: | ||
{{In Bearbeitung}} | {{In Bearbeitung}} | ||
{{Verbesserungswürdiger Inhalt | {{Verbesserungswürdiger Inhalt | ||
|Anmerkung1 = | |Anmerkung1 =Der ursprüngliche Artikel basiert auf Wikipedia, was aber als Quelle nicht angegeben wurde. | ||
}} | }} | ||
| Zeile 7: | Zeile 7: | ||
Ein [[Feld (Informatik)|Feld]] oder [[Array]] ist ein spezieller [[Container (Informatik)|Container]], der | Ein [[Feld (Informatik)|Feld]] oder [[Array]] ist ein spezieller [[Container (Informatik)|Container]], der | ||
endlich viele [[Element]]e zu einer durchnummerierten Folge zusammenfasst. | endlich viele [[Element]]e zu einer durchnummerierten Folge zusammenfasst. Dabei wird dem ersten Element der Folge | ||
im Allgemeinen die Poistion <code>0</code> | |||
([[null-basierte Zählweise]]) oder die Position <code>1</code> ([[eins-basierte Zählweise]]) zugeordnet. | |||
Ein Feld hat dauerhaft eine feste Länge. Das heißt, die Zahl der Elemente, die in einem Feld gespeichert werden können, wird bei der Erzeugung des Feldes festgelegt und kann nachträglich nicht mehr geändert werden. | |||
=Bemerkungen= | =Bemerkungen= | ||
Auf ein Element eines | Der Begriff [[Array]] wird nicht einheitlich gebraucht. | ||
In einigen Programmiersprachen, wie z.B. [[ActionScript]] oder [[Lingo]], verhalten sich Arrays eher wie | |||
[[Liste (Informatik)|Listen]], als wie [[Feld]]er. | |||
Auf ein Element eines Feldes kann direkt zugegriffen werden, wenn seine Position im Feld bekannt ist. Üblicherweise geschieht | |||
der Zugriff mit Hilfe des so genannten [[Indexoperator]]s <code><nowiki>[]</nowiki></code>. | |||
var a := ["r", "s", "t"]; // Definition eines neuen Feldes in Pseudo-Code | |||
print(a[1]); // Ergebnis: "s", wenn die Positionsnummer des ersten Elements 0 ist | |||
// Ergebnis: "r", wenn die Positionsnummer des ersten Elements 1 ist | |||
Mit Hilfe einer [[For-Schleife]] kann auf alle Elemente eines Feldes nacheinander zugegriffen werden: | |||
var a := ["r", "s", "t"]; // Definition eines neuen Feldes in Pseudo-Code | |||
for i := 0 to a.length -1 | |||
print a[i]; | |||
Es kann darüber hinaus spezielle Operatoren wie z.B. [[For-each-Schleife]]n geben, | |||
mit denen nacheinander auf alle Elemente eines Array zugegriffen werden kann. | |||
In vielen Programmiersprachen ist es möglich, den [[Datentyp]] der Elemente eines Feldes zu beschränken: | |||
String[5], Array<3,Integer> ... // längenbeschränkte und typisierte Felder in Pseudocode, zwei alternative Schreibweisen | |||
Ein Feld, das andere Felder als Elemente hat, wird [[mehrdimensionales Feld]] genannt: | |||
* | String[5][6][3] // drei-dimensionales typisiertes Feld mit 5*6*3 Elementen in Pseudocode | ||
Array<8, Array<8, String>> // zwei-dimensionales typisiertes Feld mit 8*8 Elementen in Pseudocode (alternative Schreibweise) | |||
* | |||
=Beispiele= | =Beispiele= | ||
| Zeile 36: | Zeile 50: | ||
Ein eindimensionales Array kann z.B. einen Vektor darstellen. | Ein eindimensionales Array kann z.B. einen Vektor darstellen. | ||
vektor: Integer[3] := [0,1,-4]; | |||
==zweidimensionales Array== | ==zweidimensionales Array== | ||
| Zeile 42: | Zeile 56: | ||
Ein zweidimensionales kann z.B. eine Matrix darstellen. | Ein zweidimensionales kann z.B. eine Matrix darstellen. | ||
matrix: Integer[5][5] | |||
:= [[0,0,0,0, 0], | |||
[0,0,7,0, 0], | |||
[1,1,1,1, 0], | |||
[0,2,0,0,-4], | |||
[0,0,0,0,-3] | |||
] | |||
=Quellen= | =Quellen= | ||
*[[ | * [[Schneider, Werner (2001): Taschenbuch der Informatik]] | ||
*[[ | * [[Kowarschick, W.: Multimedia-Programmierung]] | ||
=Siehe auch= | =Siehe auch= | ||
Version vom 12. Januar 2007, 16:41 Uhr
Dieser Artikel wird derzeit von einem Autor gründlich bearbeitet. Die Inhalte sind daher evtl. noch inkonsistent.
Der ursprüngliche Artikel basiert auf Wikipedia, was aber als Quelle nicht angegeben wurde.
Definition
Ein Feld oder Array ist ein spezieller Container, der
endlich viele Elemente zu einer durchnummerierten Folge zusammenfasst. Dabei wird dem ersten Element der Folge
im Allgemeinen die Poistion 0
(null-basierte Zählweise) oder die Position 1 (eins-basierte Zählweise) zugeordnet.
Ein Feld hat dauerhaft eine feste Länge. Das heißt, die Zahl der Elemente, die in einem Feld gespeichert werden können, wird bei der Erzeugung des Feldes festgelegt und kann nachträglich nicht mehr geändert werden.
Bemerkungen
Der Begriff Array wird nicht einheitlich gebraucht. In einigen Programmiersprachen, wie z.B. ActionScript oder Lingo, verhalten sich Arrays eher wie Listen, als wie Felder.
Auf ein Element eines Feldes kann direkt zugegriffen werden, wenn seine Position im Feld bekannt ist. Üblicherweise geschieht
der Zugriff mit Hilfe des so genannten Indexoperators [].
var a := ["r", "s", "t"]; // Definition eines neuen Feldes in Pseudo-Code
print(a[1]); // Ergebnis: "s", wenn die Positionsnummer des ersten Elements 0 ist
// Ergebnis: "r", wenn die Positionsnummer des ersten Elements 1 ist
Mit Hilfe einer For-Schleife kann auf alle Elemente eines Feldes nacheinander zugegriffen werden:
var a := ["r", "s", "t"]; // Definition eines neuen Feldes in Pseudo-Code for i := 0 to a.length -1 print a[i];
Es kann darüber hinaus spezielle Operatoren wie z.B. For-each-Schleifen geben, mit denen nacheinander auf alle Elemente eines Array zugegriffen werden kann.
In vielen Programmiersprachen ist es möglich, den Datentyp der Elemente eines Feldes zu beschränken:
String[5], Array<3,Integer> ... // längenbeschränkte und typisierte Felder in Pseudocode, zwei alternative Schreibweisen
Ein Feld, das andere Felder als Elemente hat, wird mehrdimensionales Feld genannt:
String[5][6][3] // drei-dimensionales typisiertes Feld mit 5*6*3 Elementen in Pseudocode Array<8, Array<8, String>> // zwei-dimensionales typisiertes Feld mit 8*8 Elementen in Pseudocode (alternative Schreibweise)
Beispiele
eindimensionales Array
Ein eindimensionales Array kann z.B. einen Vektor darstellen.
vektor: Integer[3] := [0,1,-4];
zweidimensionales Array
Ein zweidimensionales kann z.B. eine Matrix darstellen.
matrix: Integer[5][5]
:= [[0,0,0,0, 0],
[0,0,7,0, 0],
[1,1,1,1, 0],
[0,2,0,0,-4],
[0,0,0,0,-3]
]
