Det Perl push () -funktion bruges til at skubbe en værdi eller værdier ud i slutningen af en matrix, hvilket øger antallet af elementer. De nye værdier bliver derefter de sidste elementer i matrixen. Det returnerer det nye samlede antal elementer i matrixen. Det er let at forveksle denne funktion med funktionen unshift (), der tilføjer elementer til begyndelsen af en matrix. Her er et eksempel på funktionen Perl push ():
@myNames = ('Larry', 'Curly');
skub @myNames, 'Moe';
udskriv "@myNames \ n";
Når denne kode udføres, leverer den:
Larry Curly Moe
Forestil dig en række med nummererede felter fra venstre mod højre. Funktionen push () skubber den nye værdi eller værdier til højre side af arrayet og øger elementerne.
Arrayet kan også betragtes som en stak. Forestil dig en stak med nummererede kasser, start med 0 øverst og øg, når den går ned. Funktionen push () skubber værdien ned på bunden af stakken og øger elementerne på denne måde:
@myNames = (
< 'Larry',
'Krøllet'
);
skub @myNames, 'Moe';
Du kan også skubbe flere værdier direkte på matrixen ...
@myNames = ('Larry', 'Curly');
skub @myNames, ('Moe', 'Shemp');
... eller ved at trykke på en matrix:
@myNames = ('Larry', 'Curly');
@moreNames = ('Moe', 'Shemp');
push (@myNames, @moreNames);
Bemærk til begyndende programmerere: Perl-matriser begynder med et @ -symbol. Hver komplette kodelinje skal slutte med en semikolon. Hvis det ikke gør det, udføres det ikke. I det stablede eksempel i denne artikel er linjerne uden semikolon værdier indeholdt i en matrix og indesluttet i parenteser. Dette er ikke en undtagelse fra semikolonreglen, lige så meget som et resultat af stakemetoden. Værdierne i matrixen er ikke individuelle kodelinjer. Det er lettere at forestille sig dette i den horisontale tilgang til kodning.
Andre funktioner til manipulation af arrays
Andre funktioner bruges også til at manipulere arrays. Disse gør det nemt og effektivt at bruge en Perl-matrix som en stak eller som en kø. Foruden push-funktionen kan du bruge:
- Pop-funktion - fjerner og returnerer det sidste element i en matrix
- Skift-funktion - flytter hele matrixen til venstre. Elementet, der er det første element i arrayet, falder af arrayet og bliver funktionens returværdi
- Skift funktion - det modsatte af skiftfunktionen, placerer en værdi i begyndelsen af en matrix og flytter alt det andet element til højre.