Operatory Bicep

W tym artykule opisano operatory Bicep. Operatory służą do obliczania wartości, porównywania wartości lub oceniania warunków. Istnieją sześć typów operatorów Bicep:

Pierwszeństwo operatora i kojarzenie

Poniższe operatory są wymienione w kolejności malejącej pierwszeństwa (im wyższa jest pozycja wyższego pierwszeństwa). Operatory wymienione na tym samym poziomie mają równe pierwszeństwo.

Symbol Typ operacji Łączność
( ) [ ] . :: Nawiasy, indeksatory tablic, metody dostępu do właściwości i zagnieżdżone metody dostępu do zasobów Od lewej do prawej
! - Jednoargumentowy Od prawej do lewej
% * / Multiplikatywne Od lewej do prawej
+ - Dodatku Od lewej do prawej
<= < > >= Relacyjne Od lewej do prawej
== != =~ !~ Równość Od lewej do prawej
&& AND logiczne Od lewej do prawej
|| OR logiczne Od lewej do prawej
?? Coalesce Od lewej do prawej
? : Wyrażenie warunkowe (ternary) Od prawej do lewej

Nawiasy

Otaczanie wyrażenia między nawiasami umożliwia zastąpienie domyślnego pierwszeństwa operatora Bicep. Na przykład wyrażenie x + y / z oblicza najpierw podział, a następnie dodanie. Jednak wyrażenie (x + y) / z oblicza pierwszą i drugą dywizję.

Akcesor

Operatory dostępu służą do uzyskiwania dostępu do zagnieżdżonych zasobów i właściwości obiektów.

Operator Nazwa/nazwisko opis
[] Akcesorium indeksu Uzyskaj dostęp do elementu tablicy lub właściwości na obiekcie.
. Akcesorium funkcji Wywoływanie funkcji w zasobie.
:: Akcesorium zagnieżdżonego zasobu Uzyskaj dostęp do zagnieżdżonego zasobu spoza zasobu nadrzędnego.
. Akcesorium do właściwości Uzyskiwanie dostępu do właściwości obiektu.

Porównanie

Operatory porównania porównują wartości i zwracają true wartość lub false.

Operator Nazwa/nazwisko opis
>= Większe niż lub równe Oblicza, czy pierwsza wartość jest większa lub równa drugiej wartości.
> Większe niż Oblicza, czy pierwsza wartość jest większa niż druga wartość.
<= Mniejsze niż lub równe Oblicza, czy pierwsza wartość jest mniejsza lub równa drugiej wartości.
< Mniejsze niż Oblicza, czy pierwsza wartość jest mniejsza niż druga wartość.
== Równa Ocenia, czy dwie wartości są równe.
!= Nie równa się Ocenia, czy dwie wartości nierówne.
=~ Bez uwzględniania wielkości liter Ignoruje wielkość liter, aby określić, czy dwie wartości są równe.
!~ Nie jest równe bez uwzględniania wielkości liter Ignoruje wielkość liter, aby określić, czy dwie wartości nierówne.

Wartość logiczna

Operatory logiczne oceniają wartości logiczne, zwracają wartości inne niż null lub oceniają wyrażenie warunkowe.

Operator Nazwa/nazwisko opis
&& And Zwraca wartość true , jeśli wszystkie wartości są prawdziwe.
|| Or Zwraca true wartość, jeśli którakolwiek z wartości ma wartość true.
! Not Neguje wartość logiczną. Przyjmuje jeden operand.
?? Łączonej Zwraca pierwszą wartość inną niż null.
? : Wyrażenie warunkowe Oblicza warunek dla wartości true lub false i zwraca wartość.

Forgiving o wartości null

Operator forgiving o wartości null pomija wszystkie ostrzeżenia dopuszczające wartość null dla poprzedniego wyrażenia.

Operator Nazwa/nazwisko opis
! Forgiving o wartości null Pomija wszystkie ostrzeżenia dopuszczające wartość null dla poprzedniego wyrażenia.

Liczbowe

Operatory liczbowe używają liczb całkowitych do wykonywania obliczeń i zwracania wartości całkowitych.

Operator Nazwa/nazwisko opis
* Pomnożyć Mnoży dwie liczby całkowite.
/ Podzielić Dzieli liczbę całkowitą przez liczbę całkowitą.
% Modulo Dzieli liczbę całkowitą przez liczbę całkowitą i zwraca resztę.
+ Dodaj Dodaje dwie liczby całkowite.
- Subtract Odejmuje jedną liczbę całkowitą z innej liczby całkowitej. Przyjmuje dwa operandy.
- Minus (jednoargumentowy) Mnoży liczbę całkowitą przez -1. Przyjmuje jeden operand.

Uwaga

Odejmij i minus użyj tego samego operatora. Ta funkcja jest inna, ponieważ odejmowanie używa dwóch operandów i minus używa jednego operandu.

Sejf-dereference

Operator bezpiecznego wyłudzenia pomaga zapobiegać błędom, które mogą wystąpić podczas próby uzyskania dostępu do właściwości lub elementów bez odpowiedniej wiedzy na temat ich istnienia lub wartości.

Operator Nazwa/nazwisko opis
<base>.?<property>, <base>[?<index>] Sejf-dereference Stosuje dostęp do elementu obiektu lub operację dostępu do elementu tablicy do operandu tylko wtedy, gdy ten operand zwróci wartość inną niż null. W przeciwnym razie zwraca wartość null.

Spread

Operator rozkładu służy do rozszerzania iterowalnej tablicy lub obiektu na poszczególne elementy. Operator rozkładu umożliwia łatwe manipulowanie tablicami lub obiektami przez rozłożenie ich elementów lub właściwości na nowe tablice lub obiekty.

Operator Nazwa/nazwisko opis
... Spread Umożliwia rozszerzanie iterowalnych tablic i obiektów na poszczególne elementy lub właściwości.

Następne kroki