Wyrażenie jest najmniejszą jednostką kodu, która po obliczeniu daje wynik. W Verse wszystko jest wyrażeniem, co oznacza, że wszystko jest oceniane jako wartość.
przykładem jest wyrażenie if ... else, które w języku Verse zwraca wartość zależną od zawartości
bloków wyrażenia. Poniższy kod zwraca wartość typu ciąg tekstowy (string), która zawiera informację „Więcej!” lub „Mniej!”, w zależności od tego, czy wartość MyNumber była większa od 5:
if (MyNumber > 5):
“Big!”
else
“Small!”Oznacza to, że możesz użyć elementu if ... else bezpośrednio jako danych wejściowych funkcji zamiast zapisywać wynik i używać go jako danych wejściowych.
Choć ten przykład jest prosty, istnieją konteksty, w których takie rozwiązanie staje się potężniejsze. Na przykład pętle są oceniane jako tablice wartości, dzięki czemu można szybko tworzyć nowe tablice na podstawie istniejących.
W poniższym kodzie tablica MyArray będzie zawierać wszystkie wartości z tablicy NumberArray, które są mniejsze niż 5.
MyArray : []int = for(Number := NumberArray, Number < 5):
NumberWyrażenia zawodne
Wyrażenie zawodne to wyrażenie, które może zakończyć się powodzeniem i wygenerować wartość lub może zakończyć się niepowodzeniem i nie zwrócić żadnej wartości. Wyrażenia zawodne można wykonywać tylko w kontekście niepowodzenia, ponieważ ten kontekst określi, co się stanie w przypadku niepowodzenia wyrażenia.
Przykłady wyrażeń zawodnych obejmują indeksowanie do tablicy, ponieważ nieprawidłowy indeks zakończy się niepowodzeniem, oraz używanie operatorów, takich jak porównywanie dwóch wartości. Aby dowiedzieć się więcej na temat wyrażeń zawodnych w Verse, patrz: Niepowodzenie.
Lista wyrażeń w Verse
W poniższej tabeli opisano różne rodzaje wyrażeń w Verse. W zawartych w niej odnośnikach można znaleźć więcej informacji na temat poszczególnych wyrażeń.
| Wyrażenie | Opis | Czy wyrażenie jest zawodne? |
|---|---|---|
Literały | Literał to stała wartość w kodzie, taka jak liczba lub znak. W Verse istnieją literały dla następujących typów:
| |
Wywołania funkcji | Wywołanie funkcji jest wyrażeniem i może mieć dwie formy: | Tylko gdy wywołanie funkcji ma postać |
Porównanie | Wyrażenie porównawcze porównuje dwa elementy za pomocą jednego z operatorów porównawczych:
Aby dowiedzieć się więcej, patrz: Operatory. | Tak |
Przypisanie | Wyrażenie przypisania przechowuje wartość w modyfikowalnej lokalizacji, na przykład podczas inicjowania stałej lub zmiany wartości zmiennej. Aby dowiedzieć się więcej, patrz: Stałe i zmienne. | |
Matematyka | Wyrażenie matematyczne wykonuje obliczenia przy użyciu następujących operatorów:
Wszystkie te operatory mają również warianty przypisania, które mogą być używane ze wskaźnikami. Aby dowiedzieć się więcej, patrz: Operatory. | Tylko dla dzielenia liczb całkowitych. |
Decyzja | Wyrażenie decyzji wykorzystuje operatory | Tak |
Zapytanie | Wyrażenie zapytania wykorzystuje operator | Tak |
Instancja klasy i struktury | Tworzenie instancji | |
sterowanie przepływem | Kontrolowanie przepływu oznacza ustalanie kolejności, w jakiej komputer wykonuje instrukcje. Do zmiany tego przepływu można użyć wyrażeń takich jak
Aby dowiedzieć się więcej, patrz: Sterowanie przepływem. | |
Siatka | Tablica to kontener, w którym można przechowywać elementy tego samego typu. Elementy tablicy są uporządkowane w kolejności, w jakiej zostały w niej umieszczone, a dostęp do nich można uzyskać poprzez ich pozycję w tablicy, zwaną ich indeksem. Aby dowiedzieć się więcej, patrz: Tablica. | Tylko podczas indeksowania do tablicy. |
krotka | Krotka to kontener, w którym można przechowywać elementy jednego lub większej liczby typów. Elementy krotki są w kolejności, w jakiej zostały w niej umieszczone, a dostęp do nich można uzyskać poprzez ich pozycję w krotce, zwaną ich indeksem. Aby dowiedzieć się więcej, patrz: Krotka. | |
Mapa | Mapa jest kontenerem, w którym można przechowywać wartości powiązane z inną wartością, nazywane parami klucz-wartość. Pary klucz-wartość mogą być dowolną kombinacją typów, o ile typ klucza jest porównywalny. Elementy mapy są w kolejności, w jakiej pary klucz-wartość zostały w niej umieszczone, a dostęp do nich można uzyskać za pomocą ich unikatowych kluczy. Aby dowiedzieć się więcej, patrz: Mapa. | |
Opcja | Opcja jest kontenerem, który może zawierać jedną wartość lub nie zawierać żadnej wartości typu. Aby dowiedzieć się więcej, patrz: Opcja. | |
Zasięg | Wyrażenia zakresu zawierają wszystkie liczby pomiędzy dwiema wartościami, łącznie z tymi określonymi wartościami, z kodem |