Returverdier Fra Funksjoner
Å kunne sende data inn i funksjoner er verdifullt, men det er like fordelaktig å hente data fra funksjoner. Det er her nøkkelordet return blir essensielt.
Nøkkelordet return gjør det mulig for funksjoner å sende data tilbake til stedet i koden der de ble kalt. Her er syntaksen for en funksjon med en return-setning:
func functionName(param_1 datatype, param_2 datatype, ...) return_datatype {
// Code
return data_to_be_returned
}
data_to_be_returned er stedet hvor vi spesifiserer et uttrykk eller en verdi. returned_datatype representerer den forventede datatypen for verdien som skal returneres. Dette vil bli tydeligere gjennom et eksempel.
Det følgende programmet illustrerer implementeringen av en return-setning via en funksjon som beregner og returnerer både summen og produktet av to gitte heltallsargumenter:
index.go
1234567891011121314package main import "fmt" func myFunc(value_1 int, value_2 int) int { var sum int = value_1 + value_2 var prod int = value_1 * value_2 var result int = sum + prod return result } func main() { fmt.Println(myFunc(5, 7)) }
Vennligst merk at i Println-funksjonen har vi myFunc(5, 7), og programmet ovenfor gir utdataene 47, som er resultatet av beregningene utført av myFunc()-funksjonen. Dette viser at return-setningen sender spesifikke data tilbake til stedet der funksjonen ble kalt. I tillegg kan vi lagre de returnerte dataene i en variabel:
index.go
12var returnedValue int = myFunc(5, 7) fmt.Println(returnedValue) // Outputs '47'
Merk
En funksjon trenger ikke parametere for å inkludere en
return-setning.
En funksjon kan ikke inneholde kode etter en return-setning, og vanligvis tillater ikke Go flere return-setninger:
index.go
1234567891011// Function exits after the first return statement it encounters func exampleOne() int { return 1 return 2 // Will be ignored } // There cannot be any code after a return statement func exampleTwo() int { return 1 fmt.Println() // Error here }
Likevel er det mulig å bruke return-setningen innenfor betingede strukturer for selektiv retur av verdier:
index.go
123456789101112131415package main import "fmt" func myFunc() string { if(1 > 2) { return "1 is greater than 2" } else { return "2 is greater than 1" } } func main() { fmt.Println(myFunc()) }
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Can you show an example of a function using the return statement in Go?
What happens if I try to put code after a return statement in a Go function?
Can a Go function return multiple values?
Awesome!
Completion rate improved to 1.96
Returverdier Fra Funksjoner
Sveip for å vise menyen
Å kunne sende data inn i funksjoner er verdifullt, men det er like fordelaktig å hente data fra funksjoner. Det er her nøkkelordet return blir essensielt.
Nøkkelordet return gjør det mulig for funksjoner å sende data tilbake til stedet i koden der de ble kalt. Her er syntaksen for en funksjon med en return-setning:
func functionName(param_1 datatype, param_2 datatype, ...) return_datatype {
// Code
return data_to_be_returned
}
data_to_be_returned er stedet hvor vi spesifiserer et uttrykk eller en verdi. returned_datatype representerer den forventede datatypen for verdien som skal returneres. Dette vil bli tydeligere gjennom et eksempel.
Det følgende programmet illustrerer implementeringen av en return-setning via en funksjon som beregner og returnerer både summen og produktet av to gitte heltallsargumenter:
index.go
1234567891011121314package main import "fmt" func myFunc(value_1 int, value_2 int) int { var sum int = value_1 + value_2 var prod int = value_1 * value_2 var result int = sum + prod return result } func main() { fmt.Println(myFunc(5, 7)) }
Vennligst merk at i Println-funksjonen har vi myFunc(5, 7), og programmet ovenfor gir utdataene 47, som er resultatet av beregningene utført av myFunc()-funksjonen. Dette viser at return-setningen sender spesifikke data tilbake til stedet der funksjonen ble kalt. I tillegg kan vi lagre de returnerte dataene i en variabel:
index.go
12var returnedValue int = myFunc(5, 7) fmt.Println(returnedValue) // Outputs '47'
Merk
En funksjon trenger ikke parametere for å inkludere en
return-setning.
En funksjon kan ikke inneholde kode etter en return-setning, og vanligvis tillater ikke Go flere return-setninger:
index.go
1234567891011// Function exits after the first return statement it encounters func exampleOne() int { return 1 return 2 // Will be ignored } // There cannot be any code after a return statement func exampleTwo() int { return 1 fmt.Println() // Error here }
Likevel er det mulig å bruke return-setningen innenfor betingede strukturer for selektiv retur av verdier:
index.go
123456789101112131415package main import "fmt" func myFunc() string { if(1 > 2) { return "1 is greater than 2" } else { return "2 is greater than 1" } } func main() { fmt.Println(myFunc()) }
Takk for tilbakemeldingene dine!