Tässä artikkelissa opit kaiken funktioista, mikä on funktio, syntaksi, tyypit Swiftissä esimerkkien avulla.
Mikä on funktio?
Funktio on ryhmä lauseita, joka määrittelee suoritettavan toiminnon. Toiminnon pääasiallinen käyttötarkoitus on tehdä koodi uudelleenkäytettäväksi.
Ei teknisesti, voit ajatella toimintoa koneena. Kone suorittaa tietyn tehtävän, pyytää syötettä, käsittelee syötteen ja palauttaa lähdön.
Toimintotyypit
Riippuen siitä, onko ohjelmoija määrittänyt toiminnon ennalta vai luonutko sen; toimintoja on kahdenlaisia:
- Kirjastofunktiot - toiminnot, jotka on määritelty jo Swift Frameworkissa.
- Käyttäjän määrittelemät toiminnot - Ohjelmoijan itse luomat toiminnot.
Kirjastotoiminnot
Kirjastotoiminnot ovat sisäänrakennettuja toimintoja, jotka on jo määritelty Swift-kehyksessä. Nämä toiminnot ovat käytettävissä ratkaisemaan Swiftin yleiset ongelmat, jotta sinun ei tarvitse ratkaista niitä itse. Ne ovat yksinkertaisia toimintoja, kuten tulostus, minimien ja enimmäismäärien löytäminen jne.
Voit käyttää kirjastotoimintoa suoraan kutsumalla (kutsumalla) sitä. Jos haluat, näet kaikki toiminnot Swift-kehyksen sisällä. Kirjoita vain tuonti Swift, paina Cmd ja napsauta sitä. Siirryt uudelle sivulle. Hae kaikista lauseista, jotka alkavat func
avainsanalla.
Esimerkki 1: Kirjasto tai sisäänrakennettu toiminto
print("Hello, World!")
Kun suoritat yllä olevan ohjelman, tulos on:
Hei maailma!
Yllä olevassa ohjelmassa olemme käyttäneet sisäänrakennettua print
toimintoa, joka on määritelty Swift Frameworkissa. Toimintoa käytetään tulostamaan konsoli.
Pystymme kutsumaan print()
toimintoa, koska Swift-kehys tuodaan automaattisesti leikkikentäämme. Muuten meidän olisi pitänyt tuoda se itse kirjoittamalla import Swift
.
Käyttäjän määrittelemät toiminnot
Swiftin avulla voit myös määrittää oman toiminnon. Oman toiminnon luominen auttaa koodin kirjoittamisessa ongelmien ratkaisemiseen tai tehtävien suorittamiseen, joita ei ole Swift Frameworkissa. Voit myös käyttää toimintoasi vastaavien tehtävien suorittamiseen tulevaisuudessa.
Samoin toiminnot voidaan myös luokitella parametrien ja palautuslausekkeiden perusteella. Katso artikkeli Swift-toimintoparametrityypit ja palautustyypit.
Funktion määritteleminen
func function_name (argumentit…) -> ReturnType (// lauseiden palautusarvo)
Kuvataan kutakin komponenttia lyhyesti:
func
on avainsana, joka sinun on kirjoitettava toiminnon luomiseksifunction_name
on funktion nimi. Voit antaa sille minkä tahansa nimen, joka määrittelee toiminnon toiminnan.args…
määrittää tulon, jonka toiminto hyväksyy.->
Tätä operaattoria käytetään osoittamaan funktion palautustyyppi.ReturnType
määrittää arvon tyypin, jonka voit palauttaa funktiosta. EsimInt
.String
Jne.return
avainsanaa käytetään ohjelman ohjauksen siirtämiseen funktiokutsulle ja myös arvon palauttamiseksi funktiosta.
Vaikka et määritä palautusavainsanaa, funktio palautuu automaattisesti viimeisen käskyn suorittamisen jälkeen.value
edustaa funktiosta palautettavia todellisia tietoja. Arvotyypin on vastattava arvoaReturnType
.
Kuinka toiminto toimii?
Yllä olevassa kaaviossa käsky function_name(args)
kutsuu / kutsuu funktion argumenttiarvoilla args, joka sitten jättää nykyisen koodiosan (ts. Lopettaa lauseiden suorittamisen sen alapuolella) ja alkaa suorittaa ensimmäisen rivin funktion sisällä.
- Ohjelma saapuu koodiriville
func function_name(Args… )
ja hyväksyy funktion kutsun aikana välitetyt arvotfunction_name(args)
. - Sitten ohjelma suorittaa
statementsInsideFunction
funktion sisällä määritetyt lauseet . - Funktion sisällä olevat lauseet suoritetaan ylhäältä alas järjestyksessä yksi toisensa jälkeen.
- Viimeisen käskyn suorittamisen jälkeen ohjelma poistuu toiminnosta ja palaa takaisin mistä se aloitti
function_name(args)
. let val =
tallentaa funktion palauttaman arvon vakioarvoon. Vastaavasti voit tallentaa muuttujaan muodossavar val =
.- Sen jälkeen lausunnot
statementsOutsideFunction
suoritetaan.
Esimerkki 2: Kuinka funktio määritetään Swiftissä?
func greet(user:String) ( print("Good Morning! (user)") )
Yllä on funktion määritelmä, joka koostuu seuraavista komponenteista:
- Avainsana
func
merkitsee funktion otsikon alkua. greet
on toiminnon nimi, joka yksilöi ja kutsuu toiminto ohjelmassa.(user:String)
merkitsee toiminnon otsikon lopun ja hyväksyy tyyppisen parametrinString
. Katso artikkeli Swift-toimintoparametrityypit ja palautustyypit, jotka määrittelevät toiminnon parametreilla.- Funktio koostuu
print
rungon sisällä olevasta lausekkeesta, joka suoritetaan kutsun jälkeen.
Funktion kutsuminen
Kun olet luonut toiminnon, voit kutsua sitä ohjelmassasi suorittamaan funktion sisällä ilmoitetut lauseet. Kutsuaksesi funktion, kirjoita vain funktion nimi ja sen jälkeen () ja välitä sen sisällä olevat syöteparametrit seuraavasti:
tervehdi (käyttäjä: "Isac")
Esimerkki 3: Funktion kutsuminen Swiftissä
func greet(user:String) ( print("Good Morning! (user)") ) greet(user: "Isac")
Kun suoritat yllä olevan ohjelman, tulos on:
Hyvää huomenta! Isac
Yllä olevassa koodissa greet(user: "Isac")
kutsuu funktiota ja välittää Isac
tyypin arvon String
. Sen jälkeen print
lauseke funktion sisällä suoritetaan.
Palautuslausunto
Paluu-avainsana kehottaa ohjelmaa poistumaan toiminnosta ja palaamaan riville, jolle toimintokutsu soitettiin.
Voit välittää arvon myös return
avainsanalla, jossa arvo on muuttuja tai muuta funktiosta palautuvaa tietoa.
Esimerkki 3: Funktio palautusavainsanalla
func greet(user:String)-> String ( return "Good Morning! (user)" ) let greeting = greet(user: "Isac") print(""" You have a new message (greeting) """)
Kun suoritat yllä olevan ohjelman, tulos on:
Sinulla on uusi viesti Huomenta! Isac
Yllä olevassa koodissa greet(user: "Isac")
kutsuu funktiota ja välittää Isac
tyypin arvon String
. return "Good Morning! (user)"
lause palauttaa tyypin arvon String
ja siirtää ohjelman funktiokutsuun.
let greeting =
tallentaa toiminnosta palautetun arvon. Kun funktio palaa, print
funktion kutsun alla oleva käsky suoritetaan.
Muistettavaa
- Anna funktion nimi, joka heijastaa funktion tarkoitusta.
- Funktion tulisi suorittaa vain yksi tehtävä. Jos toiminto suorittaa useamman kuin yhden tehtävän, jaa se useaan toimintoon.
- Yritä ajatella aikaisin ja ryhmittää lauseita toiminnon sisällä, joka tekee koodista uudelleenkäytettävän ja modulaarisen.