Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Overføring av data til funksjoner | Funksjoner
Introduksjon til Golang

bookOverføring av data til funksjoner

Funksjoner er ikke særlig nyttige hvis vi ikke kan få tilgang til data utenfor dem på grunn av forskjeller i omfang. Vi kan imidlertid sende data inn i funksjoner ved å bruke 'parametere'.

Parametere definerer et format for data som en funksjon forventer å motta når den kalles eller utføres.

I de forrige kapitlene undersøkte vi enkle funksjoner uten parametere. Vi kan derimot erklære en funksjon med parametere ved å bruke følgende syntaks:

index.go

index.go

copy
123
func myFunc(param1 datatype, param2 datatype, ...) { // Code }

Hver parameter kan ha et unikt navn etterfulgt av sin datatypen. Parametere skilles med komma. Parametere følger de samme navnekonvensjonene som variabler.

Her er et eksempel som illustrerer bruk av funksjoner med parametere:

index.go

index.go

copy
12345678910111213141516171819202122
package main import "fmt" func outThreeTimes(message string) { fmt.Println(message) fmt.Println(message) fmt.Println(message) } func sum(value1 int, value2 int) { fmt.Println("Sum:", value1 + value2) } func product(val1 int, val2 int, val3 int) { fmt.Println("Product:", val1 * val2 * val3) } func main() { outThreeTimes("Hello World") sum(17, 25) product(4, 7, 9) }

I programmet ovenfor vil du legge merke til funksjoner med ett, to og tre parametere. Det er fullt mulig å lage funksjoner med så mange parametere som nødvendig.

Verdier kan gis til disse funksjonene enten direkte eller via variabler. For eksempel, i den følgende setningen gir vi direkte strengverdien der en parameter forventes:

index.go

index.go

copy
1
outThreeTimes("Hello World")

Alternativt kan vi lagre den i en strengvariabel og deretter sende denne variabelen inn i funksjonen:

index.go

index.go

copy
12
var msg string = "Hello World" outThreeTimes(msg)

I uttalelsen nedenfor ser du en kombinasjon av begge tilnærmingene:

index.go

index.go

copy
123
var a int = 4 var b int = 7 product(a, b, 9)

Du kan velge den metoden som passer best for dine behov.

Merk

Når variabler eller dataverdier sendes inn i en funksjon, kalles de argumenter. I tilfellet product(a, b, 9) er a, b og 9 argumenter. Motsatt, i funksjonsdeklarasjonen, er val1 int, val2 int og val3 int kjent som parametere.

Det er viktig å sende data inn i funksjoner i den rekkefølgen som er definert av parameterne. For eksempel, i en funksjon func myFunc(an int, b string), skal det første argumentet være et heltall, og det andre skal være en streng; enhver annen rekkefølge vil føre til feil.

Inne i funksjonen fungerer parametrene i praksis som variabler som får verdiene til de sendte argumentene. Derfor vil deklarering av variabler med samme navn som en funksjonsparameter inne i funksjonens kropp føre til feil.

index.go

index.go

copy
123
func myFunc(param int) { var param int = 1 // Error Here }
question mark

Velg den korrekte koden for å kalle funksjonen productTable inne i main-funksjonen.

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 3

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Awesome!

Completion rate improved to 1.96

bookOverføring av data til funksjoner

Sveip for å vise menyen

Funksjoner er ikke særlig nyttige hvis vi ikke kan få tilgang til data utenfor dem på grunn av forskjeller i omfang. Vi kan imidlertid sende data inn i funksjoner ved å bruke 'parametere'.

Parametere definerer et format for data som en funksjon forventer å motta når den kalles eller utføres.

I de forrige kapitlene undersøkte vi enkle funksjoner uten parametere. Vi kan derimot erklære en funksjon med parametere ved å bruke følgende syntaks:

index.go

index.go

copy
123
func myFunc(param1 datatype, param2 datatype, ...) { // Code }

Hver parameter kan ha et unikt navn etterfulgt av sin datatypen. Parametere skilles med komma. Parametere følger de samme navnekonvensjonene som variabler.

Her er et eksempel som illustrerer bruk av funksjoner med parametere:

index.go

index.go

copy
12345678910111213141516171819202122
package main import "fmt" func outThreeTimes(message string) { fmt.Println(message) fmt.Println(message) fmt.Println(message) } func sum(value1 int, value2 int) { fmt.Println("Sum:", value1 + value2) } func product(val1 int, val2 int, val3 int) { fmt.Println("Product:", val1 * val2 * val3) } func main() { outThreeTimes("Hello World") sum(17, 25) product(4, 7, 9) }

I programmet ovenfor vil du legge merke til funksjoner med ett, to og tre parametere. Det er fullt mulig å lage funksjoner med så mange parametere som nødvendig.

Verdier kan gis til disse funksjonene enten direkte eller via variabler. For eksempel, i den følgende setningen gir vi direkte strengverdien der en parameter forventes:

index.go

index.go

copy
1
outThreeTimes("Hello World")

Alternativt kan vi lagre den i en strengvariabel og deretter sende denne variabelen inn i funksjonen:

index.go

index.go

copy
12
var msg string = "Hello World" outThreeTimes(msg)

I uttalelsen nedenfor ser du en kombinasjon av begge tilnærmingene:

index.go

index.go

copy
123
var a int = 4 var b int = 7 product(a, b, 9)

Du kan velge den metoden som passer best for dine behov.

Merk

Når variabler eller dataverdier sendes inn i en funksjon, kalles de argumenter. I tilfellet product(a, b, 9) er a, b og 9 argumenter. Motsatt, i funksjonsdeklarasjonen, er val1 int, val2 int og val3 int kjent som parametere.

Det er viktig å sende data inn i funksjoner i den rekkefølgen som er definert av parameterne. For eksempel, i en funksjon func myFunc(an int, b string), skal det første argumentet være et heltall, og det andre skal være en streng; enhver annen rekkefølge vil føre til feil.

Inne i funksjonen fungerer parametrene i praksis som variabler som får verdiene til de sendte argumentene. Derfor vil deklarering av variabler med samme navn som en funksjonsparameter inne i funksjonens kropp føre til feil.

index.go

index.go

copy
123
func myFunc(param int) { var param int = 1 // Error Here }
question mark

Velg den korrekte koden for å kalle funksjonen productTable inne i main-funksjonen.

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 3
some-alt