Scala Flatmap

Scala Flatmap
Vi har allerede snakket om bruken av kart i Scala. Derfor vil vi i dag prøve å flytte et skritt videre ved å introdusere deg for en veldig nyttig funksjon av Scala -programmeringsspråket, i.e., Flatmap. Det kan være lurt å konvertere en annen datastruktur til et kart til tider. I tillegg kan det være lurt å flate dette kartet, jeg.e., Skill ut elementene på dette kartet i form av forskjellige tegn. I denne guiden vil vi snakke om flatmap -metoden til Scala -programmeringsspråket som vil hjelpe oss med å konvertere en gitt datastruktur til et kart mens vi flater ut.

Hvordan bruke flatmap -metoden i Scala?

For å forstå hvordan scala flatmap -metoden fungerer, vil vi først vise deg et program som gir de samme resultatene som flatmap -metoden vil gi. Etter det vil vi dele et annet eksempelprogram som bruker flatmap -metoden. Ved å sammenligne de to programmene og utgangene med hverandre, vil du kunne se hvor gunstig det er å bruke flatmap -metoden i Scala. Dette vil bli fulgt av enda et eksempel der vi bruker flatmap-metoden til Scala med en brukerdefinert funksjon. La oss nå komme i gang med å forklare alle disse tre eksemplene.

Eksempel 1: Opprette et kart fra en liste i Scala og flate ut utgangen uten å bruke FlatMap -metoden:

I dette eksemplet er vårt mål å implementere et program som kan lage et kart fra en liste ved å bruke kartmetoden til Scala, og så vil vi flate ut utgangen fra det kartet ved å bruke flatmetoden til Scala. Legg merke til at vi i Scala -skriptet vist nedenfor bruker to forskjellige funksjoner, i.e., Kart og flat, for å oppnå ønsket funksjonalitet.

Vi har laget en liste over navn i dette Scala -skriptet som inneholder tre forskjellige navn. Vi har også brukt "println" -uttalelsen for å vise disse navnene på terminalen. Deretter har vi opprettet en verdi som heter “Output1” og tilordnet den resultatet av funksjonen “MAP.(_.touppercase) ”som ikke bare vil konvertere den gitte listen til et kart, men som også vil konvertere alle alfabetene til store bokstaver. Da ønsket vi også å skrive ut denne utdata på terminalen. Til slutt har vi laget en annen verdi som heter “output2” og tilordnet den resultatet av flatfunksjonen. Etter å ha gjort denne oppgaven, brukte vi enda en "println" -uttalelse for å skrive ut denne utdata på terminalen.

For å lage en kjørbar fil for dette Scala -skriptet, brukte vi kommandoen gitt nedenfor:

$ scalac flatmap.Scala

Deretter, for å kjøre denne kjørbare filen, brukte vi følgende kommando:

$ scala flatmap

Nå er det på tide å diskutere utgangen fra dette skriptet som vises på bildet nedenfor. Først ble alle elementene på listen vist på terminalen. Deretter ble resultatet av kartmetoden vist på terminalen, i.e., Elementene på listen etter å ha blitt konvertert til overlege i form av et kart. Til slutt ble resultatet av flatmetoden vist på terminalen, i.e., Elementene på kartet etter å ha fjernet deres interne gruppering ble vist i form av forskjellige tegn.

Eksempel nr. 2: Opprette et kart fra en liste i Scala og flate ut utgangen med FlatMap -metoden:

Du kan tydelig se fra programmet vist ovenfor for å oppnå ønsket funksjonalitet; Vi måtte kjøre to distinkte funksjoner. Nå vil vi presentere for deg et Scala -skript som vil gi nøyaktig samme utgang, men mer effektivt, jeg.e., ved å bruke mindre kodelinjer eller med andre ord ved å bruke en enkelt funksjon i stedet for to.

Vi har erklært en liste over navn i Scala -skriptet vårt i dette eksemplet på samme måte som vi gjorde ovenfor. Etter å ha skrevet ut elementene på denne listen på terminalen, har vi opprettet en verdi som heter “output”. Deretter har vi ganske enkelt tildelt den resultatet av flatmapfunksjonen etter å ha konvertert inngangen til øvre tilfelle med uttalelsen “Val output = Navn.flatmap (_.touppercase) ”. Endelig har vi skrevet ut hele resultatet på terminalen.

Du kan tydelig se fra følgende utgang at det endelige resultatet som produseres i dette eksemplet er nøyaktig det samme som vårt første eksempel. Den eneste forskjellen er at vi har klart å omgå et ekstra trinn der listen først ble konvertert til et kart, og dens elementer ble også endret til store bokstaver snarere denne gangen, alt skjedde på en gang.

Eksempel nr. 3: Bruke Scala FlatMap-metoden med en brukerdefinert funksjon:

Nå ville du tydelig forstått hvorfor vi brukte flatmap -metoden i stedet for å bruke kartet og flate metoder hver for seg. Nå vil vi ganske enkelt dele et annet eksempel for å bringe mer klarhet i bruken av flatmap -funksjonen.

I dette skriptet har vi først erklært en liste med tre tall. Etter å ha skrevet ut disse tallene på terminalen, har vi opprettet en verdi som heter "output" og har tildelt den resultatet av en brukerdefinert funksjon som ganske enkelt multipliserer hvert element i den gitte listen med "2" og genererer et kart med det med Bruke flatmap -funksjonen. Deretter brukte vi "println" -klæringen for å vise denne utgangen på terminalen.

Følgende bilde viser resultatene fra dette Scala -skriptet på terminalen:

Konklusjon:

Denne artikkelen introduserte deg for flatmap -metoden til Scala -programmeringsspråket. Vi lærte deg først betydningen av denne metoden ved å dele et eksempel som ikke bruker denne metoden. Etter det fremhevet vi bruken av denne metoden ved å implementere et annet eksempel som bruker denne metoden. Til slutt, for å utdype denne bruken mer, delte vi enda et eksempel på denne metoden sammen med en brukerdefinert funksjon. Ved å gå gjennom denne opplæringen, vil du øyeblikkelig forstå hvorfor FlatMap -metoden brukes på Scala -programmeringsspråket.