Dopasowanie wzoru Scala

Dopasowanie wzoru Scala
Język Scala ma silną funkcję o nazwie dopasowanie wzoru. Sprawia, że ​​kod jest krótszy i łatwiejszy do odczytania, jednocześnie umożliwiając porównanie elementów ze skomplikowanymi wzorami. Jest to metoda porównywania wartości do wzoru. Jest porównywalny z instrukcjami przełącznika Java i C. W tym temacie poznamy ogólne techniki dopasowywania wzorców i tego, jak można je wykorzystać na naszą przewagę.

Zamiast korzystać z instrukcji przełącznika, jest tutaj używane słowo kluczowe „dopasowanie”. Słowo „dopasowanie” jest konsekwentnie zadeklarowane w klasie root Scala, aby upewnić się, że wszystkie obiekty mogą do niego uzyskać dostęp. W każdym przypadku uwzględniono wzór i jeden lub więcej wyrażeń. Są one oceniane tylko wtedy, gdy podane wzory pasują. Znak strzałek (=>) jest wykorzystywany do odróżnienia wzoru od wyrażeń.

Składniki dopasowania wzoru w Scala

Wyrażenia dopasowania składają się z różnych komponentów:

    1. „Kandydat” odnosi się do wartości, której używamy w celu dopasowania wzorców.
    2. Słowo kluczowe „dopasuj”.
    3. Kod do uruchomienia, gdy wzór się pasuje, wzór, słowo kluczowe i symbol strzałek stanowią wiele klauzul obudowy.
    4. Domyślne stwierdzenie przy braku dopasowania wzoru. Ponieważ zawiera symbol podkreślenia (_) i pojawia się po klauzulach sprawy, domyślną klauzulę można łatwo zidentyfikować.

Spójrzmy na prosty przykład, aby zademonstrować te elementy:

Przykład 1: dopasowanie wzorca typu „int” w Scala

Jako dopasowanie wzoru przykład wymaga wartości całkowitej i zwraca również liczbę całkowitą. Wszelkie parametry inne niż liczby całkowite nie mogą być przekazane. To powoduje porażkę.


W skrypcie Scala ustaliliśmy obiekt jako „my_object” z modyfikatorem obiektu Scala. Zawiera główną metodę wykorzystującą druk do wyświetlania instrukcji. W metodzie println wywołaliśmy metodę testową. Metoda testowa przyjmuje parametr typu liczb całkowitych „1”. Następnie mamy metodę podejścia funkcjonalnego, w której zdefiniowaliśmy metodę testową. Metoda testowa przyjmuje zmienną „i” typu „int”.

Ustawiamy słowo kluczowe „mecz” ze zmienną „i”. Wewnątrz sekcji blokowej używane są instrukcje przypadków. Mamy tutaj trzy przypadki, które zwracają wyrażenie w sprawie satysfakcjonującej. Wyrażenie zawarte w sprawie jest oceniane, czy wartość „i” odpowiada dowolnym z przypadków. Ponieważ osiągnęliśmy sukces w tej pierwszej próbie, sprawa 1 jest oceniana. Jeśli wartość „i” nie wynosi 0 lub 1, domyślna sprawa, która jest „przypadkiem”, jest przeprowadzana.

Zapisaliśmy wyżej wspomniany program Scala w „Przykładzie.plik scala ”. Następnie wykonujemy program Scala z nazwą obiektu, który podałeś w skrypcie. Tutaj mamy „My_Object”. Wykonaliśmy ten obiekt za pomocą słowa kluczowego Scala. Jak widać, wyrażenie przypadku 1 jest uzyskiwane, ponieważ pasowało do wzoru.

Przykład 2: Dopasowanie wzorca typu „String” w Scala

Każdy obiekt w Scali ma typ statyczny, którego nie można zmodyfikować, ponieważ jest to język typu. Na przykład obiekt ciągłości może mieć tylko wyrażenia ciągów. Jak widać na poniższej ilustracji, Scala ułatwia porównanie obiektów z wzorami typu.


Zacznij od konstruowania obiektu poprzedniego skryptu Scali. Obiektowi przypisano nazwę „Linux_Object”. Wewnątrz ciała tego obiektu mamy główną definicję funkcji. Metoda println jest wywoływana w głównej definicji funkcji, w której wywołaliśmy metodę testową i przekazaliśmy do niej parametr ciągów „saeed”. Następnie mamy funkcję testową, w której zadeklarowana jest zmienna „x”.

Przypisaliśmy modyfikator dopasowania do tej zmiennej „x” dla pasującego wzoru przypadków. W bloku metody testowej trzy przypadki są wyposażone w wyrażenia. Tutaj przypadek z wieloznaczną kartą „_” jest wykonywana, ponieważ żaden wzór nie jest dopasowany do sekwencji „x”.

Skrypt Scala jest kompilowany z modyfikatorem Scala i nazwą obiektu „Linux_Object” z poprzedniego programu. Otrzymane dane wyjściowe ma wyrażenie „Domyślny przypadek wykonany” z „Case_”.

Przykład 3: dopasowanie wzorców klas obudowy w Scala

Zajęcia przypadków są unikalnymi klasami, które są wykorzystywane w dopasowaniu wzorców opartych na wyrażeniu. Są to konwencjonalne klasy ze specjalnym modyfikatorem. Poniższy przykład jest prostą ilustracją dopasowywania wzorców, która korzysta z klas Case:


Definiując obiekt „my_demo”, zaczęliśmy ten skrypt Scala. Wewnątrz ciała obiektu „my_demo” mamy główną definicję metody. Tutaj zadeklarowaliśmy trzy zmienne - „Cyan”, „Dora” i „Marrie” - ze słowem kluczowym „Val”. Zmienne nazywa się klasą „Osoba” z nowym słowem kluczowym i ustawiają wartości na każdej zmiennej. Wartości przekazane do klasy „Osoba” to wartości ciągów i wartość liczb całkowita. Następnie iterujemy listę zmiennych „Cyan”, „Dora” i „Marrie” przy użyciu pętli i wykorzystujemy wyrażenia przypadków z konstruktorem metody „Osoba”, podając wartości wartości.

Zmienna „cyjanowa” jest wyrażeniem dopasowanym w pierwszym przypadku, nazwa „Dora” jest wyrażeniem dopasowanym w drugim przypadku, a dla innych wartości szczegóły pokazano jak podane w ostatnim przypadku. Nazwa p_name i parametry P_AGE są podawane konstruktorowi osoby dla pustego. Last, ale nie najmniej, osoba klasowa jest pusta, ponieważ żadna metoda nie musi być zdefiniowana w niej.

Po wykonaniu poprzedniego skryptu Scala wyświetla wszystkie wyrażenia dopasowania wzorców.

Wniosek

To jest podręcznik do dopasowywania wzoru Scala. Dopasowanie wzorców w Scala ulepsza się niż przełączanie w Javie. Słowo kluczowe dopasowania służy do dopasowania wejścia, które zostało dostarczone w Scala. Tutaj przechodzimy krótkie wprowadzenie do funkcji dopasowywania wzorców Scali, wraz z właściwą składnią i odpowiednimi przykładami. Dopasowanie wzorców ma tę zaletę, że jest zarówno niesamowicie wszechstronna, jak i niezwykle potężna. Struktura danych jest dynamicznie zniszczalna w wzorcu. Zmienne specyficzne dla tego wyrażenia można następnie przydzielić bezpośrednio do tych komponentów.