Golang Func

Golang Func
Funksjoner er viktige i Go -programmeringsspråket. I et nøtteskall er en funksjon en kodeblokk i et program som lar utviklere gjenbruke et kodestykke mer enn en gang i et program. Når du har definert en funksjon, kan du selektivt bruke kodestykket i andre deler av programmet uten å omdefinere koden.

Funksjoner er veldig nyttige når du trenger å lagre minnet og forbedre lesbarheten til koden din. Dette er fordi funksjoner er med på å organisere kode i modulære seksjoner, og forbedrer lesbarheten.

Denne guiden vil lære deg hvordan du jobber med funksjoner i Go -programmeringsspråket. Dette vil hjelpe deg å forstå hvordan du kan definere dine egne funksjoner i programmene dine.

Det grunnleggende

Som nevnt er en funksjon et stykke kode eller utsagn som utfører en spesifikk oppgave. Go kommer med en samling av forhåndsdefinerte funksjoner fra standardbiblioteket.

Et eksempel på en populær funksjon er FMT.Println () funksjon.

La oss forstå hvordan vi kan lage tilpassede funksjoner i Go.

Gå definere funksjon

Begynn med å lage en mappe som heter Funksjoner og naviger inn i den.

$ MKDIR -funksjoner
$ CD -funksjoner/

Lag en fil “Funksjoner.Gå ”for å lagre kildekoden:

$ berøringsfunksjoner.gå

For å definere en funksjon i Go, starter vi med nøkkelordfungen. Det blir deretter etterfulgt av navnet på funksjonen og et par parenteser. Hvis en funksjon godtar parametere, kan du passere dem inne i parentesene. Husk at en funksjon ikke kan ha noen parametere.

Til slutt, lag funksjonsblokken (hva funksjonen gjør) inne i et par krøllete seler.

Den generelle syntaks for funksjonsdefinisjon er som vist:

func funksjon_name (params)
// Funksjonsblokk

La oss lage en funksjon som heter Greet:

func hilsen ()

Koden over vil fungere som definisjonen av vår funksjon.

Deretter vil vi opprette en funksjonsblokk som inneholder koden for hvilken operasjon funksjonen utfører.

func hilsen ()
fmt.Println ("Hei, alle sammen!")

Her skriver funksjonen ut strengen “Hei, alle sammen!”Til konsollen.

Nå som funksjonen vår er definert og fullstendig, må vi sørge for at den utfører den angitte oppgaven.

Gå samtalefunksjon

For at funksjonen skal utføre de definerte handlingene, må vi kalle det. I GO starter utførelsen på hovedfunksjonen. Derfor må vi kalle vår hilsen () -funksjon i hovedfunksjonen.

Tenk på eksempelkoden nedenfor:

pakkehoved
Importer "FMT"
func main ()
hilse på()

func hilsen ()
fmt.Println ("Hei, alle sammen!")

Nå kan vi kjøre programmet vårt som:

$ go run -funksjoner.gå

Når vi har kjørt programmet, bør vi se utgangen fra hilsen () -funksjonen som:

::produksjon
Hei alle sammen!

Merk: I GO forteller hovedfunksjonen kompilatoren hvor programmets utførelse starter. Du kan bare ha en hovedfunksjon i et program, og det aksepterer ingen argumenter eller returnerer noen verdi.

Funksjoner kan være mer komplekse enn den vi brukte ovenfor. Du kan bruke andre funksjoner i Golang som løkker, nestede funksjoner, betingede uttalelser og mer.

For eksempel bruker funksjonen nedenfor to variabler for å sammenligne maks.

pakkehoved
Importer "FMT"
func main ()
Max ()

func max ()
var var1 = 10
var var2 = 100
var maksimum = 0;
Hvis var1> var2
Maksimum = var1
annet maksimum = var2
fmt.Println (maksimalt)

I eksemplet ovenfor definerer vi en funksjon som heter Max. Vi definerer da 3 variabler og sammenligner hvis var1 er større enn var2. Hvis sant, setter vi maksimal verdi til 1; ellers, sett den maksimale verdien til var2.

Deretter skriver vi ut verdien til den maksimale variabelen ved hjelp av println -metoden. Når vi har kalt Max () -funksjonen, bør vi se den største verdien som:

$ go run -funksjoner.gå
100

GO -funksjonsparametere

Vi nevnte at du kan lage parametere for funksjonene dine. La oss se på hvordan vi kan lage funksjoner med parametere.

En parameter refererer til en definert enhet som fungerer som et argument som en funksjon kan akseptere.

For å definere parametere i en funksjon, pass dem i parentesene under funksjonsdefinisjonen.

I GO starter vi med navnet på parameteren og datatypen. Syntaksen for å definere en funksjon med parametere er som vist:

func funksjon_name (param1 data_type, param2 data_type)
// Funksjonskropp

La oss tenke nytt på maks-funksjonen og se hvordan vi kan inkludere parametere for å gjøre funksjonen mer fleksibel.

Vi kan definere to parametere som fungerer som de to verdiene for å sammenligne. Dette gjør at brukeren kan passere eventuelle tilpassede verdier under funksjonssamtalen.

Den resulterende funksjonen er som vist:

func max (en int, b int)
var maksimum = 0
Hvis a> b
maksimum = a
annet
maksimum = b

fmt.Println (maksimalt)

I dette eksemplet tar Max -funksjonen to verdier, sammenligner dem og returnerer det høyeste. I hovedfunksjonen kan vi kalle Max () -funksjonen som:

func main ()
Maks (100,20)

Legg merke til at vi kan passere tilpassede verdier enn manuelt hardt koding dem inne i funksjonen.

Tips: Hvis du har et sett med parametere av samme type, kan du hoppe over å sette datatypen for hver og ganske enkelt angi det som en type.

For eksempel, siden parametrene til MAX -funksjonene er int, kan vi definere dem som:

func max (a, b int)
// Funksjonskropp

GO -funksjoner Returverdi

Hvis en funksjon kan godta en verdi, kan den absolutt returnere en. I Golang kan vi returnere en verdi fra en funksjon ved hjelp av returnøkkelordet. Når kompilatoren møter returnøkkelordet, går den ut funksjonene og går tilbake til innringerfunksjonen.

Du må spesifisere datatypen for returverdien under funksjonserklæring. Syntaksen er som vist:

func funksjon_name (params data_type) return_value_data_type
// Funksjonskropp

La oss endre MAX -funksjonen for å returnere maksimalverdien i stedet for å skrive den ut ved å bruke println -funksjonen.

func max (a, b int) int
var maksimum = 0
Hvis a> b
maksimum = a
annet
maksimum = b

returmaksimum

I eksemplet over legger du merke til at vi legger til en returtype INT i funksjonserklæringen. Vi bruker deretter returnøkkelordet for å returnere verdien av den maksimale variabelen.

Siden funksjonen returnerer en verdi, kan vi gi den verdien til andre funksjoner som vist i eksemplet nedenfor:

func main ()
// hilse på()
// MAX (100,20)
fmt.Println ("The Max Value:", Max (250, 188))

Eksemplet bruker returverdien til MAX -funksjonen og gir den til Println -funksjonen.

Go lar deg også returnere flere verdier fra en funksjon. For eksempel kan vi returnere en streng og int fra samme funksjon som vist:

func max (a, b int) (int, streng)
// Funksjonskropp
returmaksimum, "en strengretur"

I eksemplet over returnerer vi en int og strengverdi.

Konklusjon

Denne guiden utforsket hvordan du jobber med funksjoner i Go -programmeringsspråket. Fortsett å øve på å bli en bedre programmerer.