Scala Zip

Scala Zip
Scala Zip -funksjonen er den samme som zip -filer. I artikkelen har vi en dyp demonstrasjon av Scala Zip -funksjonen som vil forbedre effektiviteten og lesbarheten til kode. Scala Zip -funksjonen kombinerer to samlinger av elementer parvis og fusjonerer dem til en ny samling av elementer. Funksjonen tilhører et konkret verdimedlem av den abstrakte iterable klassen som vil lage nye samlinger par i form av tuples.

Hva er zip () i Scala:

Scala Zip -metoden tar to sett som et argument og fletter dem sammen med en ny samling som inneholder kombinerte elementer. Så i utgangspunktet kombinerer Scala Zip -funksjonen to samlinger av objekter for å gi en ny samling. Disse samlingene brukes av lister, strenger, matriser, visninger og iteratorer.

Syntaks og parameter for zip -funksjonen i Scala:

Den generelle syntaks for zip -funksjonen i Scala er gitt nedenfor:

def zip [i] (at: iterable [b]): liste [(i, j)]

Iterable “That” gir resultatet av paret fra andre omgang fra den nye Iterable Collection. “Liste” er den resulterende samlingen som dannes ved å kombinere en samling av elementer på listen.

Den returnerer en oppdatert ny skala som holder et par tilsvarende elementer fra den originale samlingen av lister. Hvis lengden på de to sammenkoblede samlingene er den samme, vil den gi en glidelås av de samme elementene sammenkoblet, eller hvis lengden på de to samlingene ikke er den samme, er sammenkoblingen til minimumslengden.

Hvordan bruke zip -funksjon i Scala i Ubuntu 20.04:

For å forstå det grunnleggende om å bruke zip -funksjonen i Scala, bør vi se på eksemplene:

Eksempel 1: Bruke zip -funksjon i skala av samme lengde

Som i eksemplet tar vi to samlinger med lister med samme lengde på elementet bare for å få den nye samlingen med samme lengde størrelse som vi har i den originale. Nedenfor har vi en eksempelkode for å bruke Scala ZIP -funksjonen for samme lengde på to samlinger som må sammenkobles og lage en ny samling.

Koden over har en klasse erklært med "ny". Vi har hovedfunksjonen kalt der kode implementeres i klassen. Vi har variable verdier med søkeordet “val”. Variabelen “Val” tar “L1” for listeelementer, og den andre verdien av en variabel er definert som “L2” for de andre elementene på listen. Da har vi en annen variabel som faktisk bruker Scala Zip -funksjonen for å kombinere “L1” og “L2” sammen. Skrive ut "L3" i Print () -funksjonen fra koden.

Som du ser, fikk vi resultatet av samme lengde ved hjelp av Scala Zip -funksjonen, og en ny sammenkoblet samling av lister ble opprettet.

Eksempel nr. 2: Bruke zip -funksjon i skala med forskjellig lengde

Nå har vi Scala Zip -funksjonen for forskjellige lister i denne eksemplet kode. Her tar vi en minimumslengde på listen for å lage en ny samling av listeelementer. La oss se implementeringen av koden nedenfor.

I eksemplet er klassen erklært med navnet "myList", og hovedfaget vårt er definert i klassen. Først definerer vi en variabel med nøkkelordet “val” som representerer “LIS1” og tildeler forskjellige verdier av listeelementer. Da har vi en annen variabel, “LIS2” som også har en liste over elementer i seg, men ikke mindre enn “LIS1” -elementer. Så vi bruker Scala Zip -funksjonen i en ny variabel, “LIS3” som vil være en ny samling av lister. Her tar vi en ny variabel, “LIS4” som vil snu listen i omvendt rekkefølge av sammenkobling. Skriv nå ut “LIS3” og “LIS4”.

Siden vi har “LIS2” mindre enn “LIS1”, etter å ha brukt Scala ZIP -funksjonen, har vi en lengde 4 av den sammenkoblede listen over samlingen; Vi har også den omvendte rekkefølgen på listen i utgangen.

Eksempel nr. 3: Bruke zip -funksjon i skala for strengdatatype

Her tar vi et eksempel for strengdatatypen for listeelementer i en liste. Vi har en demonstrasjon av dette eksemplet som kode nedenfor.

Klassenavnet er erklært som "ABC" i eksempelkoden, som definerer hovedfunksjonen vår. I hovedfunksjonen har vi variabler med "val" nøkkelordet som er definert som "spillerliste" som har forskjellige navn på spillere på listen. Så har vi en annen variabel som "sportsliste" og tildeler et annet sportsnavn som spiller spiller. Ved hjelp av Scala ZIP -funksjoner har vi glidelås “PlayerList” og “Sportlist” sammen for å få en ny String Collection. Observer at vi bruker foreach () -metoden som vil iterere elementer på listen til listeelementene er blitt behandlet med metoden.

Som det presenteres i utdataene nedenfor fra ovennevnte kodeimplementering.

Eksempel 4: Bruke zip -funksjon i Scala med kartfunksjonen

Vi har et annet eksempel på å bruke Scala Zip -funksjonen for kartdrift over Zipped Collection og for andre operasjonelle formål. La oss ha en eksempelkode.

Vi har en klasse som "sum" av hovedfunksjonen vår som har en variabel "S1" og "S2" som har tildelt forskjellige numeriske verdier og også den tredje variabelen som "S3". Bruke Scala ZIP -funksjonen til å zip “S1” og “S2” sammen. Nå i vår utskriftsuttalelse kan du se at vi har brukt kartfunksjon over zip -funksjon for å oppsummere de sammenkoblede listeverdiene.

Vi viser resultatet fra zip -samlingen av listen og kartfunksjonen som gjøres med glidelåsverdier. Da den returnerte summen av listen som utdata.

Konklusjon:

Etter alt å telle så vi hvordan Scala Zip -funksjonen fungerer med de forskjellige illustrasjonene sammen med kodene. Hvordan det hjelper med å lage en ny par -samling i Scala. Vi kan også reversere zip-samlingen for å få de originale listene med samlinger, så Scala Zip-funksjoner er bra for å nærme seg objektorientert programmering.