Funkcje Swift (z przykładami)

W tym artykule dowiesz się wszystkiego o funkcjach, czym jest funkcja, składnia, typy w języku Swift wraz z przykładami.

Co to jest funkcja?

Funkcja to grupa instrukcji, które definiują czynność do wykonania. Głównym zastosowaniem funkcji jest umożliwienie ponownego wykorzystania kodu.

Nie technicznie możesz myśleć o funkcji jak o maszynie. Maszyna wykonuje określone zadanie, prosi o dane wejściowe, przetwarza dane wejściowe i zwraca dane wyjściowe.

Rodzaje funkcji

W zależności od tego, czy funkcja jest predefiniowana czy stworzona przez programistę; istnieją dwa rodzaje funkcji:

  1. Funkcje biblioteczne - funkcje, które są już zdefiniowane w Swift Framework.
  2. Funkcje zdefiniowane przez użytkownika - funkcje tworzone przez samego programistę.

Funkcje biblioteki

Funkcje biblioteczne to funkcje wbudowane, które są już zdefiniowane w środowisku Swift. Te funkcje służą do rozwiązywania typowych problemów w Swift, dzięki czemu nie musisz samodzielnie ich rozwiązywać. Są to proste operacje, takie jak drukowanie, znajdowanie minimum i maksimum itp.

Możesz użyć funkcji biblioteki bezpośrednio, wywołując ją (wywołując). Jeśli chcesz, możesz zobaczyć wszystkie funkcje we frameworku Swift. Po prostu napisz import Swift, naciśnij Cmd i kliknij go. Przejdziesz do nowej strony. Wyszukaj wszystkie stwierdzenia zaczynające się od funcsłowa kluczowego.

Przykład 1: Biblioteka lub wbudowana funkcja

 print("Hello, World!")

Po uruchomieniu powyższego programu wynik będzie:

 Witaj świecie!

W powyższym programie wywołaliśmy wbudowaną printfunkcję zdefiniowaną w Swift Framework. Funkcja służy do drukowania danych wyjściowych w konsoli.

Jesteśmy w stanie wywołać print()funkcję, ponieważ framework Swift jest automatycznie importowany do naszego Playground. W przeciwnym razie powinniśmy sami go zaimportować, pisząc import Swift.

Funkcje zdefiniowane przez użytkownika

Swift umożliwia także zdefiniowanie własnej funkcji. Stworzenie własnej funkcji pomaga pisać kod do rozwiązywania problemów lub wykonywania zadań niedostępnych w Swift Framework. Możesz także ponownie wykorzystać swoją funkcję do wykonywania podobnych zadań w przyszłości.

Podobnie funkcje można również kategoryzować na podstawie parametrów i instrukcji powrotu. Zobacz artykuł Typy parametrów funkcji Swift i typy zwrotów.

Definiowanie funkcji

 func nazwa_funkcji (argumenty…) -> ReturnType (// instrukcje zwracają wartość) 

Krótko opiszmy poszczególne komponenty:

  • func to słowo kluczowe, które musisz napisać, aby utworzyć funkcję
  • function_nameto nazwa funkcji. Możesz nadać mu dowolną nazwę, która definiuje, co robi funkcja.
  • args… definiuje dane wejściowe, które funkcja przyjmuje.
  • -> Ten operator służy do wskazywania zwracanego typu funkcji.
  • ReturnTypedefiniuje typ wartości, którą można zwrócić z funkcji. Na przykład Int, Stringitd.
  • returnsłowo kluczowe służy do przekazywania kontroli nad programem do wywołania funkcji, a także do zwracania wartości z funkcji.
    Nawet jeśli nie określisz słowa kluczowego return, funkcja zwraca automatycznie po wykonaniu ostatniej instrukcji.
  • valuereprezentuje rzeczywiste dane zwracane przez funkcję. Typ wartości musi być zgodny z ReturnType.

Jak działa funkcja?

Na powyższym diagramie instrukcja function_name(args)wywołuje / wywołuje funkcję z wartościami argumentów args, która następnie opuszcza bieżącą sekcję kodu (tj. Przestaje wykonywać instrukcje poniżej) i rozpoczyna wykonywanie pierwszej linii wewnątrz funkcji.

  1. Program przechodzi do wiersza kodu func function_name(Args… )i akceptuje wartości argumentów przekazane podczas wywołania funkcji function_name(args).
  2. Następnie program wykonuje instrukcje statementsInsideFunctionzdefiniowane w funkcji.
  3. Instrukcje wewnątrz funkcji są wykonywane w kolejności od góry do dołu, jedna po drugiej.
  4. Po wykonaniu ostatniej instrukcji program opuszcza funkcję i wraca do miejsca, z którego zaczął, tj function_name(args).
  5. let val =przechowuje wartość zwróconą przez funkcję w stałej val. Podobnie możesz przechowywać w zmiennej jako var val =.
  6. Następnie statementsOutsideFunctionwykonywane są instrukcje .

Przykład 2: Jak zdefiniować funkcję w Swift?

 func greet(user:String) ( print("Good Morning! (user)") ) 

Powyżej pokazano definicję funkcji, która składa się z następujących komponentów:

  1. Słowo kluczowe funcoznacza początek nagłówka funkcji.
  2. greetto nazwa funkcji służąca do jednoznacznej identyfikacji i wywoływania funkcji w programie.
  3. (user:String)oznacza koniec nagłówka funkcji i przyjmuje parametr typu String. Zobacz artykuł Typy parametrów funkcji Swift i typy zwracane, który definiuje funkcję z parametrami.
  4. Funkcja składa się z printinstrukcji wewnątrz ciała, która jest wykonywana po wywołaniu funkcji.

Wywołanie funkcji

Po utworzeniu funkcji możesz wywołać ją w swoim programie, aby wykonać instrukcje zadeklarowane wewnątrz funkcji. Aby wywołać funkcję, po prostu wpisz nazwę funkcji, a po niej () i przekaż jej parametry wejściowe jako:

 witaj (użytkownik: "Isac")

Przykład 3: Wywołanie funkcji w języku Swift

 func greet(user:String) ( print("Good Morning! (user)") ) greet(user: "Isac") 

Po uruchomieniu powyższego programu wynik będzie:

Dzień dobry! Isac

W powyższym kodzie greet(user: "Isac")wywołuje funkcję i przekazuje wartość Isactypu String. Następnie wykonywana jest printinstrukcja wewnątrz funkcji.

Instrukcja zwrotu

Słowo kluczowe return nakazuje programowi opuszczenie funkcji i powrót do wiersza, w którym dokonano wywołania funkcji.

Możesz także przekazać wartość za pomocą returnsłowa kluczowego, gdzie wartość jest zmienną lub inną informacją pochodzącą z funkcji.

Przykład 3: Funkcja ze słowem kluczowym return

 func greet(user:String)-> String ( return "Good Morning! (user)" ) let greeting = greet(user: "Isac") print(""" You have a new message (greeting) """) 

Po uruchomieniu powyższego programu wynik będzie:

Masz nową wiadomość Dzień dobry! Isac

W powyższym kodzie greet(user: "Isac")wywołuje funkcję i przekazuje wartość Isactypu String. return "Good Morning! (user)"instrukcja zwraca wartość typu Stringi przenosi program do wywołania funkcji.

let greeting =przechowuje wartość zwróconą przez funkcję. Po zakończeniu funkcji wykonywana jest printinstrukcja poniżej wywołania funkcji.

Rzeczy do zapamiętania

  • Podaj nazwę funkcji, która odzwierciedla przeznaczenie funkcji.
  • Funkcja powinna wykonywać tylko jedno zadanie. Jeśli funkcja wykonuje więcej niż jedno zadanie, podziel je na wiele funkcji.
  • Spróbuj wcześnie pomyśleć i zgrupuj instrukcje wewnątrz funkcji, dzięki czemu kod jest wielokrotnego użytku i modułowy.

Interesujące artykuły...