Ruby Array slettelement

Ruby Array slettelement
Hvis du tenker på en matrise som en database, kommer en forkortelse til tankene: Crud-Create, Read, Update and Delete. Denne opplæringen vil diskutere hvordan du oppretter, leser, oppdaterer og sletter elementer i en matrise.

Hvordan lage en en rubin -matrise

I Ruby kan vi lage en matrise ved å omslutte en samling komma-separerte verdier i par firkantede parenteser.

For eksempel:

MyArray = [1,2,3,4,5,6]

Hvert element i en matrise er kjent som et element, og det kan være av ethvert gyldig objekt som heltall, float, streng, hashes og mer.

Du kan også opprette en matrise i Ruby ved hjelp av den nye klassemetoden. For eksempel:

MyArray = Array.ny

For å definere matrisens størrelse under opprettelsen, kan du passere størrelsen på matrisen i parentes som:

MyArray = Array.Ny (10)

Eksemplet ovenfor har en størrelse på 10 elementer.

Hvordan lese matriseelementer

Det første trinnet for å lese en matrise i Ruby er å skrive den ut. I et slikt tilfelle kan vi bruke innebygde rubinmetoder som utskrift og setter:

MyArray = [1,2,3,4,5,6]
Skriv ut MyArray
[1, 2, 3, 4, 5, 6]

Bruke utskriftsmetoden vil returnere elementene i en matrise alt i en enkelt linje.

Eksemplet nedenfor bruker PUTS -kommandoen for å vise elementene i matrisen:

MyArray = [1,2,3,4,5,6]
setter myarray
1
..
5
6

I motsetning til utskriftsmetoden, vil PUTS vise elementene i en matrise, hvert element per linje.

For å iterere over elementene i en matrise, kan du bruke hver# funksjon. Ta eksemplet nedenfor:

MyArray = [1,2,3,4,5,6]
MyArray.Hver | i | setter jeg

Eksemplet ovenfor vil returnere hvert element i matrisen.

Et annet eksempel når itering over en matrise er å bruke en enkel for loop. Tenk på eksemplet som er vist nedenfor:

MyArray = [1,2,3,4,5,6]
for jeg i myarray
setter i
slutt

I likhet med hver# metode, vil for -loopen over returnere hvert element i matrisen.

Hvordan oppdatere Ruby Array -elementer

Du kan oppdatere verdiene i en Ruby -matrise ved å utføre forskjellige handlinger. For eksempel kan du sortere dem, legge til et nytt element, snu elementene og mange flere.

La oss diskutere noen få eksempler på å oppdatere et eksisterende utvalg i Ruby.

For å legge til et nytt element i matrisen, kan du bruke push -metoden som:

kapteiner = [
"James Kirk",
"William Riker",
"Christopher Pike",
"Jonathan Archer"
]
kapteiner.Push ("Jean-Luc Picard")

Push -metoden vil ta den medfølgende verdien og legge den til på slutten av matrisen.

Produksjon:

Skriv ut kapteiner
["James Kirk", "William Riker", "Christopher Pike", "Jonathan
Archer "," Jean-Luc Picard "]

For å legge til et nytt element i begynnelsen av matrisen, kan du bruke unshift -metoden som:

kapteiner.Unshift ("Kathryn Janeway")
Skriv ut kapteiner
=> ["Kathryn Janeway", "James Kirk", "William Riker", "Christopher Pike", "Jonathan Archer"]

Anta at du vil endre elementet i en matrise som er lagret i en bestemt indeks? For å gjøre dette, kan du bruke oppdragsoperatøren.

Tenk på eksemplet nedenfor:

Kapteiner [0] = "Carol Freeman"
Skriv ut kapteiner
["Carol Freeman", "William Riker", "Christopher Pike", "Jonathan Archer"]

I eksemplet over velger vi elementet ved indeksen over 0 og tilordner en ny verdi.

Hvordan slette matriseelementer i Ruby

Ruby gir deg forskjellige måter å fjerne elementer i en matrise. Slike metoder inkluderer:

Bruke pop# -metode

For å fjerne det siste elementet i en matrise, bruk popmetoden. Tenk på eksemplet som er vist nedenfor:

kapteiner = [
"James Kirk",
"William Riker",
"Christopher Pike",
"Jonathan Archer"
]
kapteiner.pop
Skriv ut kapteiner

Popmetoden tar det siste elementet i matrisen og sletter det som vist i den resulterende matrisen:

["James Kirk", "William Riker", "Christopher Pike"]]

Bruke skift# -metode

Skiftmetoden ligner på popmetoden. Imidlertid fjerner det det første elementet i matrisen som vist:

kapteiner = [
"James Kirk",
"William Riker",
"Christopher Pike",
"Jonathan Archer"
]
kapteiner.skifte
Skriv ut kapteiner

Drittmetoden fjerner elementet ved indeks 0 som vist:

["William Riker", "Christopher Pike", "Jonathan Archer"]

Bruke Delete_at# -metode

Hvis du vil fjerne en matrise i en bestemt indeks, kan du bruke Delete_at -metoden. Det tar indeksposisjonen som argument.

Tenk på eksemplet nedenfor:

kapteiner = [
"James Kirk",
"William Riker",
"Christopher Pike",
"Jonathan Archer"
]
kapteiner.delete_at (2)
Skriv ut kapteiner

Eksemplet ovenfor fjerner elementet som er lagret ved indeks 2 i matrisen. Den resulterende verdien er:

["James Kirk", "William Riker", "Jonathan Archer"]

Bruke Delete# -metode

Slettmetoden godtar en matriseverdi og fjerner den fra den spesifiserte matrisen. For eksempel:

kapteiner = [
"James Kirk",
"William Riker",
"Christopher Pike",
"Jonathan Archer"
]
kapteiner.Slett ("William Riker")
Skriv ut kapteiner

I motsetning til Delete_at, aksepterer slettemetoden en faktisk verdi av matrisen.

Bruke trekk- og oppdragsoperatør

Trekk- og tildelingsoperatøren uttrykt som -= kan fjerne et element fra en matrise.

Tenk på eksemplet som er vist nedenfor:

kapteiner = [
"James Kirk",
"William Riker",
"Christopher Pike",
"Jonathan Archer"
]
Kapteiner -= ["Christopher Pike"]
Skriv ut kapteiner

Eksemplet over spesifiserer elementet som skal fjernes inne i et par firkantede parenteser.

Bruke Delete_if# -metode

Delete_if -metoden aksepterer en betinget og fjerner alle elementene i matrisen som ikke oppfyller den spesifiserte tilstanden.

Ta eksemplet nedenfor:

kapteiner = [
"James Kirk",
"William Riker",
"Christopher Pike",
"Jonathan Archer"
]
kapteiner.delete_if | i | Jeg.lengde <11
Skriv ut kapteiner

Metoden tar en blokk og evaluerer hvert element for en matchende sak. Hvis verdien ikke oppfyller de faste forholdene, fjerner metoden den.

Den resulterende verdien er:

["William Riker", "Christopher Pike", "Jonathan Archer"]

Siste tanker

I denne guiden diskuterte vi CRUD -operasjoner når vi jobbet med matriser i Ruby. Det er bra å merke seg at denne opplæringen ikke uttømmer alle metodene og teknikkene for CRUD -operasjoner når du jobber med Ruby Arrays.

Takk for at du leser!