Arrays
Arrays zijn niet moeilijk om te begrijpen en ze zijn gemakkelijk om te gebruiken. Arrays zijn sequentiële lijsten. Ladenkasten, waarvan elke lade via een nummer te bereiken is. Je kunt in elke lade wat in doen of opvragen.
Met het DIM commando dimensioneer je een array: DIM arraynaam(aantal elementen)
De array kan alleen een numerieke lijst of lijst van strings hebben, dus niet beide. Voor strings moet de arraynaam eindigen met een dollarteken, net zoals bij stringvariabelen.
Waarden aan een array element toekennen doe je zo: arraynaam(element) = waarde
Voor de waarde kun je numerieke waarden gebruiken of stringwaarden. Literals, zoals getallen of tekst tussen aanhalingstekens mag ook. Op die manier werkt het precies zo als bij gewone variabelen.
Array dimensies
Liberty BASIC ondersteunt twee soorten array dimensies: singel arrays (ééndimensionaal) of dubbele arrays (twee dimensionaal). Hoewel er BASIC dialecten zijn die meer dimensies ondersteunen, is dit niet het geval in Liberty BASIC.
Voorbeeld: DIM tabel(10, 10)
Dit is een array genaamd tabel met 11 x 11 elementen. Onthoud dus dat ook element 0 er in voorkomt. Er is geen mogelijkheid in Liberty BASIC om element 0 uit te zetten, wat in QuickBASIC wel mogelijk is.
Arrays herdimensioneren
Arrays kunnen we herdimensioneren als we een ander aantal elementen nodig hebben. Het commando REDIM is algemeen bekend net als DIM. Je doet precies hetzelfde, alleen je blijft dezelfde array gebruiken met een andere lijst. Het nadeel is wel dat je na het REDIM commando alles kwijt bent wat je in de array had staan. Liberty BASIC kent geen PRESERVE commando om te kunnen herdimensioneren zonder gegevensverlies. Er zijn BASIC dialecten die het wel kunnen.
Arrays structureren
Hoewel arrays sequentieel werken, is het toch mogelijk om een eigen datastructuur te maken. Omdat Liberty BASIC geen lijsten, queues en dictionary's kent, moeten we het met arrays doen. Op de pagina Datastructuren lees je meer daarover hoe we arrays op een niet-sequentiële manier kunnen gebruiken. En dat niet alleen: we kunnen zelfs zonder arrays gegevens structureren. Alleen Liberty BASIC heeft die handige mogelijkheid.