V tomto článku se dozvíte vše o funkcích, co je funkce, syntaxe, typy v Swift s příklady.
Co je to funkce?
Funkce je skupina příkazů, která definuje akci, která má být provedena. Hlavní použití funkce je, aby byl kód znovu použitelný.
Non technically, you can think of a function as a machine. Stroj provede konkrétní úkol, požádá o vstup, zpracuje vstup a vrátí výstup.
Druhy funkcí
Podle toho, zda je funkce předdefinována nebo vytvořena programátorem; existují dva typy funkcí:
- Funkce knihovny - Funkce, které jsou definovány již v Swift Framework.
- Uživatelem definované funkce - Funkce vytvořené samotným programátorem.
Funkce knihovny
Funkce knihovny jsou vestavěné funkce, které jsou již definovány v rámci Swift. Tyto funkce slouží k řešení běžných problémů ve Swiftu, takže je nemusíte řešit sami. Jedná se o jednoduché operace, jako je tisk, hledání minima a maxima atd.
Funkci knihovny můžete použít přímo vyvoláním (voláním). Pokud chcete, můžete vidět všechny funkce uvnitř rámce Swift. Stačí napsat import Swift, stisknout Cmd a kliknout na něj. Přejdete na novou stránku. Prohledejte všechny výpisy začínající func
klíčovým slovem.
Příklad 1: Knihovna nebo vestavěná funkce
print("Hello, World!")
Když spustíte výše uvedený program, výstup bude:
Ahoj světe!
Ve výše uvedeném programu jsme vyvolali vestavěnou print
funkci definovanou v Swift Framework. Tato funkce se používá k tisku výstupu v konzole.
Jsme schopni volat print()
funkci, protože Swift framework se automaticky importuje do našeho hřiště. Jinak bychom jej měli importovat sami písemně import Swift
.
Uživatelem definované funkce
Swift také umožňuje definovat vlastní funkci. Vytvoření vlastní funkce pomáhá psát kód pro řešení problémů nebo provádění úkolů, které nejsou v Swift Framework k dispozici. Můžete také znovu použít svou funkci k provádění podobných úkolů v budoucnu.
Podobně lze funkce také kategorizovat na základě parametrů a návratových příkazů. Viz článek Typy parametrů funkce Swift a typy návratů.
Definování funkce
funcname_name (args…) -> ReturnType (// návratová hodnota příkazů)
Pojďme stručně popsat jednotlivé komponenty:
func
je klíčové slovo, které musíte napsat, abyste vytvořili funkcifunction_name
je název funkce. Můžete mu dát libovolný název, který definuje, co funkce dělá.args…
definuje vstup, který funkce přijímá.->
Tento operátor se používá k označení návratového typu funkce.ReturnType
definuje typ hodnoty, kterou můžete vrátit z funkce. NapřInt
.String
Atd.return
klíčové slovo se používá k přenosu řízení programu do volání funkce a také k vrácení hodnoty z funkce.
I když nezadáte návratové klíčové slovo, funkce se vrátí automaticky po provedení posledního příkazu.value
představuje skutečná data vrácená z funkce. Typ hodnoty se musí shodovat sReturnType
.
Jak funguje funkce?
Ve výše uvedeném diagramu příkaz function_name(args)
vyvolá / zavolá funkci s args hodnotami argumentů, která poté opustí aktuální část kódu (tj. Zastaví provádění příkazů pod ní) a začne vykonávat první řádek uvnitř funkce.
- Program přijde na řádek kódu
func function_name(Args… )
a přijme hodnoty args předané během volání funkcefunction_name(args)
. - Program poté provede příkazy
statementsInsideFunction
definované uvnitř funkce. - Příkazy uvnitř funkce jsou prováděny v pořadí shora dolů, jeden po druhém.
- Po provedení posledního příkazu program opustí funkci a vrátí se zpět na místo, odkud začal, tj
function_name(args)
. let val =
ukládá hodnotu vrácenou z funkce do konstantní hodnoty. Podobně můžete uložit do proměnné jakovar val =
.- Poté
statementsOutsideFunction
se provedou příkazy .
Příklad 2: Jak definovat funkci v Swiftu?
func greet(user:String) ( print("Good Morning! (user)") )
Nahoře je definice funkce, která se skládá z následujících komponent:
- Klíčové slovo
func
označuje začátek záhlaví funkce. greet
je název funkce k jedinečné identifikaci a volání funkce v programu.(user:String)
označí konec záhlaví funkce a přijme parametr typuString
. Přečtěte si článek Typy parametrů Swift Function a návratové typy, které definují funkci s parametry.- Funkce se skládá z
print
příkazu uvnitř těla, který se provede po volání funkce.
Volání funkce
Jakmile vytvoříte funkci, můžete ji v programu zavolat a provést příkazy deklarované uvnitř funkce. Chcete-li volat funkci, jednoduše napište název funkce následovaný () a předejte do ní vstupní parametry jako:
pozdravit (uživatel: "Isac")
Příklad 3: Volání funkce v Swiftu
func greet(user:String) ( print("Good Morning! (user)") ) greet(user: "Isac")
Když spustíte výše uvedený program, výstup bude:
Dobré ráno! Isac
Ve výše uvedeném kódu greet(user: "Isac")
volá funkci a předává hodnotu Isac
typu String
. Poté print
se provede příkaz uvnitř funkce.
Prohlášení o vrácení
Návratové klíčové slovo říká programu, aby opustil funkci a vrátil se na řádek, kde bylo provedeno volání funkce.
Můžete také předat hodnotu pomocí return
klíčového slova, kde value je proměnná nebo jiné informace pocházející z funkce.
Příklad 3: Funkce s návratovým klíčovým slovem
func greet(user:String)-> String ( return "Good Morning! (user)" ) let greeting = greet(user: "Isac") print(""" You have a new message (greeting) """)
Když spustíte výše uvedený program, výstup bude:
Máte novou zprávu Dobré ráno! Isac
Ve výše uvedeném kódu greet(user: "Isac")
volá funkci a předává hodnotu Isac
typu String
. return "Good Morning! (user)"
příkaz vrátí hodnotu typu String
a přenese program do volání funkce.
let greeting =
ukládá hodnotu vrácenou z funkce. Po návratu funkce se provede print
příkaz pod voláním funkce.
Věci k zapamatování
- Zadejte název funkce, který odráží účel funkce.
- Funkce by měla splnit pouze jeden úkol. Pokud funkce provádí více než jeden úkol, rozdělte ji na více funkcí.
- Zkuste přemýšlet včas a seskupit příkazy uvnitř funkce, díky níž je kód opakovaně použitelný a modulární.