Parametry funkcji
Lekcja 5 z 19 w kursie Funkcje i wskaźniki w Golang w Coddy.
Na poprzedniej lekcji napisaliśmy naszą pierwszą funkcję — prostą funkcję, która nie przyjmuje żadnych parametrów; po prostu wyświetla komunikat na ekranie.
Załóżmy teraz, na przykład, że chcemy utworzyć funkcję, która oblicza sumę dwóch wartości. Jak możemy to zrobić? Możemy zrobić to tak:
func sum() {
fmt.Println("result = ", value1 + value2)
}Powinieneś to łatwo zrozumieć, prawda? Po prostu dodajemy tutaj dwie wartości i wyświetlamy wynik. Mamy jednak pewien problem: value1 i value2 nie są zdefiniowane. Skąd ta funkcja będzie wiedzieć, które wartości zsumować? Właśnie tu pojawiają się argumenty lub parametry. W nawiasach umieszczamy parametry, które funkcja będzie przyjmować, na przykład tak:
func sum(v1, v2 int) {
fmt.Println("result =", v1+v2)
}Za pomocą składni sum(v1, v2 int) określamy, że ta funkcja będzie przyjmować dwie wartości typu int i możemy zrobić z nimi w treści funkcji wszystko, czego potrzebujemy. W naszym przypadku po prostu wyświetlamy sumę tych dwóch wartości: fmt.Println("result = ", v1 + v1).
Teraz, gdy wywołamy tę funkcję, przekażemy jej dowolne dwie wartości, a ona obliczy ich sumę:
func main() {
sum(12, 44)
}Wynik będzie następujący:
result = 56Możemy wywoływać tę funkcję, jak tylko chcemy. Na przykład:
func main() {
sum(12, 44)
sum(100, 399)
}Wynik będzie następujący:
result = 56
result = 400Tutaj pokazaliśmy przykład typu całkowitego, ale parametry mogą być dowolnego typu, w zależności od sytuacji. Możemy też użyć różnych typów w jednej funkcji, na przykład:
functionName(v1 int, v2 string)Wyzwanie
ŁatwyNapisz funkcję o nazwie coddy, która przyjmuje dwa argumenty: s typu string oraz n typu int, i wypisuje na ekranie ciąg znaków s n razy.
Przykład:
Dane wejściowe: s = "Golang" oraz n = 2
Dane wyjściowe:
Golang
GolangSpróbuj swoich sił
import "fmt"
// Twój kod tutaj
Wszystkie lekcje w sekcji Funkcje i wskaźniki w Golang
1Wprowadzenie
Wprowadzenie4Odtwórz funkcje obsługi ciągów znaków w Go
Ciągi znaków w GolangFunkcja JoinFunkcja ContainsFunkcja IndexWyzwanie podsumowujące nr 1Poćwicz samodzielnie: Kompilator Go online