Parametri della funzione
Lezione 5 di 19 del corso Funzioni e puntatori in Golang di Coddy.
Nella lezione precedente, abbiamo scritto la nostra prima funzione, che è una semplice funzione che non accetta parametri; stampa soltanto un messaggio sullo schermo.
Ora, supponiamo, per esempio, di voler creare una funzione che calcoli la somma di due valori. Come possiamo farlo? Beh, possiamo fare così:
func sum() {
fmt.Println("result = ", value1 + value2)
}Dovresti capirlo facilmente, giusto? Qui facciamo semplicemente un'addizione di due valori e stampiamo il risultato. Ma abbiamo un problema: value1 e value2 non sono definiti. Come farà questa funzione a sapere quali valori sommare? È qui che entrano in gioco gli argomenti o parametri. Tra parentesi, inseriamo i parametri che questa funzione riceverà, così:
func sum(v1, v2 int) {
fmt.Println("result =", v1+v2)
}Con questa sintassi sum(v1, v2 int), intendiamo che questa funzione riceverà due valori di tipo int, e possiamo fare con essi ciò che ci serve all'interno del corpo della funzione. Nel nostro caso, stampiamo semplicemente la somma dei due valori fmt.Println("result = ", v1 + v1).
Ora, quando chiamiamo questa funzione, passeremo due valori a nostra scelta e la funzione calcolerà la somma per noi:
func main() {
sum(12, 44)
}L'output sarà:
result = 56E possiamo chiamarla come vogliamo. Per esempio:
func main() {
sum(12, 44)
sum(100, 399)
}L'output sarà:
result = 56
result = 400Qui abbiamo fatto solo un esempio con un tipo intero, ma i parametri possono essere di qualsiasi tipo, a seconda della situazione. Possiamo anche inserire tipi diversi in un'unica funzione, per esempio:
functionName(v1 int, v2 string)Sfida
FacileScrivi una funzione chiamata coddy che accetta due argomenti: s di tipo string e n di tipo int, e stampa sullo schermo la stringa s n volte.
Esempio:
Input: s = "Golang" e n = 2
Output:
Golang
GolangProvalo tu
import "fmt"
// Il tuo codice qui
Tutte le lezioni di Funzioni e puntatori in Golang
1Introduzione
Introduzione4Ricostruire le funzioni Strings di Go
Stringhe in GolangFunzione JoinFunzione ContainsFunzione IndexSfida di ripasso #15Ricostruire le funzioni delle slice in Go
Funzione di uguaglianzaFunzione di lunghezzaSfida di riepilogo n. 1Esercitati da solo: Compilatore Go online