Arrays



Arrays: Declaring, Attributes, Looping, Aggregates, Iterator





Java Array and Ada Equivalent



A Loop to Print the Array



Array Index Bounds Are Checked, Of Course



Bounds Can Start Anywhere



Array Attributes: 'Length, 'First, 'Last



Attribute 'Range



Some Other Attributes



Aggregate Assignment



Aggregate Assignment - Options



Java Aggregate Assignment: Reliability



Subtypes for the Index Range (and a Count)



A New Type for the Count



Array Iterator



Array Types: Anonymous and Named





Anonymous Array Types



Named Array Types



Named Array Types have Attributes, Of Course



Why Have Named Array Types?



Array Parameters Require Named Types





Remember: Formal and Actual Parameters



Formal Parameters must be of a Named Type



Strong Type Checking



Array Operations - Also Strongly Typed



Arrays are Fixed Length





Arrays are Fixed Length



Array Types and Memory Allocation



Problem with Fixed Length and Named Types: Not Flexible



Unconstrained Array Types





Unconstrained Array Type: Both Strongly Typed and Flexible



Unconstrained Array Types and Declare Blocks



Actual Arrays Must be Constrained



Strings are Arrays of Characters





Strings are Arrays



Put_Line and Type String?



Type String is Unconstrained (and Predefined)



More Information on Strings



Array Operations: Concatenate, Slice, Comparison





Array Operations



Concatenation



Slice



Not Just Strings



Slices: Parameter Passing, Dynamic Bounds, and Assignment

  • We can gain flexibility by passing a slice to a parameter that's an unconstrained array


  • Comparison



    Array Operations: Type Checking



    Array Operation: Assignment





    Array Assignment: Type Checking



    Java Array Operations



    Array Assignment and Equality Tests



    Reference and Value Semantics



    Arrays: Enumerated Types for Indices





    Enumerated Types



    Enumerated Types for Array Indices



    Arrays Components Must Have Known Size





    Array Components Must Have Known Size



    Solutions



    Arrays of Arrays and Multi-Dimensional Arrays





    Arrays of Arrays



    Ada has 2D Arrays



    Arrays of any Dimension



    Some Other Notes





    Range and in Operator, More Attributes



    Review: In Operator