İksir - Operatörler
Operatör, derleyiciye belirli matematiksel veya mantıksal işlemleri gerçekleştirmesini söyleyen bir semboldür. Elixir tarafından sağlanan çok sayıda operatör var. Aşağıdaki kategorilere ayrılırlar -
- Aritmetik operatörler
- Karşılaştırma operatörleri
- Boole operatörleri
- Çeşitli operatörler
Aritmetik operatörler
Aşağıdaki tablo Elixir dili tarafından desteklenen tüm aritmetik işleçleri göstermektedir. Değişken varsayA 10 ve değişken tutar B 20 tutar, sonra -
Örnekleri Göster
Şebeke | Açıklama | Misal |
---|---|---|
+ | 2 numara ekler. | A + B 30 verecek |
- | İkinci sayıyı ilkinden çıkarır. | AB -10 verecek |
* | İki sayıyı çarpar. | A * B 200 verecek |
/ | İlk sayıyı ikinciden böler. Bu sayıları kayan sayılara dönüştürür ve bir kayan sonuç verir | A / B 0,5 verecektir. |
div | Bu fonksiyon bölme ile ilgili bölümü elde etmek için kullanılır. | div (10,20) 0 verir |
rem | Bu işlev, bölmede kalanı elde etmek için kullanılır. | rem (A, B) 10 verecektir |
Karşılaştırma Operatörleri
Elixir'deki karşılaştırma operatörleri çoğunlukla diğer birçok dilde sağlananlarda ortaktır. Aşağıdaki tablo Elixir'deki karşılaştırma operatörlerini özetlemektedir. Değişken varsayA 10 ve değişken tutar B 20 tutar, sonra -
Örnekleri Göster
Şebeke | Açıklama | Misal |
---|---|---|
== | Soldaki değerin sağdaki değere eşit olup olmadığını kontrol eder (Tür, aynı türde değilse değerleri çevirir). | A == B yanlış verir |
! = | Soldaki değerin sağdaki değere eşit olup olmadığını kontrol eder. | A! = B doğru verecektir |
=== | Soldaki değer türünün sağdaki değer türüne eşit olup olmadığını kontrol eder, evet ise değer için aynı şeyi kontrol edin. | A === B yanlış verir |
! == | Yukarıdakinin aynısı ancak eşitlik yerine eşitsizliği kontrol ediyor. | A! == B doğru verecektir |
> | Soldaki işlenenin değerinin sağ işlenenin değerinden büyük olup olmadığını kontrol eder; evet ise, o zaman durum gerçek olur. | A> B yanlış verir |
< | Sol işlenenin değerinin sağ işlenenin değerinden küçük olup olmadığını kontrol eder; evet ise, o zaman durum gerçek olur. | A <B doğru verecektir |
> = | Sol işlenenin değerinin sağ işlenenin değerinden büyük veya ona eşit olup olmadığını kontrol eder; evet ise, o zaman durum gerçek olur. | A> = B yanlış verir |
<= | Soldaki işlenenin değerinin sağ işlenenin değerinden küçük veya ona eşit olup olmadığını kontrol eder; evet ise, o zaman durum gerçek olur. | A <= B doğru verecektir |
Mantıksal operatörler
Elixir 6 mantıksal operatör sağlar: ve, veya, değil, &&, || ve !. İlk üç,and or notkatı Boole operatörleri, yani ilk argümanlarının bir Boolean olmasını bekledikleri anlamına gelir. Boolean olmayan bağımsız değişken bir hata oluşturacaktır. Sonraki üçte,&&, || and !katı değildir, ilk değeri kesinlikle bir boole olarak almamızı gerektirmez. Katı meslektaşları ile aynı şekilde çalışırlar. Değişken varsayA doğru ve değişken tutar B 20 tutar, sonra -
Örnekleri Göster
Şebeke | Açıklama | Misal |
---|---|---|
ve | Sağlanan her iki değerin doğru olup olmadığını kontrol eder, evet ise ikinci değişkenin değerini döndürür. (Mantıksal ve). | A ve B 20 verecek |
veya | Sağlanan değerlerden herhangi birinin doğru olup olmadığını kontrol eder. Hangi değerin doğru olduğunu döndürür. Else yanlış döndürür. (Mantıksal veya). | A veya B doğru verecek |
değil | Verilen girdinin değerini tersine çeviren tekli operatör. | A değil yanlış verir |
&& | Katı olmayan and. Aynı şekilde çalışırand ancak ilk argümanın bir Boolean olmasını beklemiyor. | B && A 20 verecek |
|| | Katı olmayan or. Aynı şekilde çalışıror ancak ilk argümanın bir Boolean olmasını beklemiyor. | B || A doğru verecek |
! | Katı olmayan not. Aynı şekilde çalışırnot ancak argümanın bir Boolean olmasını beklemez. | ! A yanlış verecek |
NOTE −ve , veya , && ve || || kısa devre operatörleridir. Bu, ilk argümanınandyanlışsa, ikincisini daha fazla kontrol etmeyecektir. Ve eğer ilk argümanordoğruysa, ikincisini kontrol etmeyecektir. Örneğin,
false and raise("An error")
#This won't raise an error as raise function wont get executed because of short
#circuiting nature of and operator
Bitsel Operatörler
Bitsel operatörler bitler üzerinde çalışırlar ve bit işlem gerçekleştirirler. Elixir, paketin bir parçası olarak bitsel modüller sağlarBitwisebu yüzden bunları kullanmak için bitsel modülü kullanmanız gerekir . Kullanmak için kabuğunuza aşağıdaki komutu girin -
use Bitwise
Aşağıdaki örnekler için A'nın 5 ve B'nin 6 olduğunu varsayın -
Örnekleri Göster
Şebeke | Açıklama | Misal |
---|---|---|
&&& | Bitsel ve operatör, her iki işlenende de mevcutsa, sonuç için bir bit kopyalar. | A &&& B 4 verir |
||| | Bitsel veya işleç, işlenenlerden herhangi birinde mevcutsa sonuca bir bit kopyalar. | Bir ||| B 7 verecek |
>>> | Bitsel sağa kaydırma operatörü, ilk işlenen bitlerini ikinci işlenende belirtilen sayı kadar sağa kaydırır. | A >>> B 0 verir |
<<< | Bitsel sola kaydırma operatörü, birinci işlenen bitlerini ikinci işlenende belirtilen sayı kadar sola kaydırır. | A <<< B 320 verir |
^^ ^ | Bitsel XOR operatörü, yalnızca her iki işlenende farklıysa sonuç için bir bit kopyalar. | A ^ ^ B 3 verir |
~~~ | Tekli bitsel değil, verilen sayıdaki bitleri ters çevirmez. | ~~~ A -6 verir |
Çeşitli Operatörler
Elixir, yukarıdaki operatörlerin dışında, aşağıdaki gibi bir dizi başka operatör de sağlar: Concatenation Operator, Match Operator, Pin Operator, Pipe Operator, String Match Operator, Code Point Operator, Capture Operator, Ternary Operator bu onu oldukça güçlü bir dil yapar.
Örnekleri Göster