Elixir - Operator
Operator adalah simbol yang memberi tahu kompiler untuk melakukan manipulasi matematika atau logika tertentu. Ada BANYAK operator yang disediakan oleh elixir. Mereka dibagi dalam kategori berikut -
- Operator aritmatika
- Operator perbandingan
- Operator Boolean
- Operator lain-lain
Operator Aritmatika
Tabel berikut menunjukkan semua operator aritmatika yang didukung oleh bahasa Elixir. Asumsikan variabelA memegang 10 dan variabel B memegang 20, lalu -
Tunjukkan Contoh
Operator | Deskripsi | Contoh |
---|---|---|
+ | Menambahkan 2 angka. | A + B akan menghasilkan 30 |
- | Mengurangi angka kedua dari angka pertama. | AB akan memberikan -10 |
* | Mengalikan dua angka. | A * B akan memberi 200 |
/ | Membagi angka pertama dari kedua. Ini melemparkan angka dalam float dan memberikan hasil float | A / B akan menghasilkan 0,5. |
div | Fungsi ini digunakan untuk mendapatkan hasil bagi pembagian. | div (10,20) akan memberikan 0 |
rem | Fungsi ini digunakan untuk mendapatkan sisa pembagian. | rem (A, B) akan memberikan 10 |
Operator Perbandingan
Operator perbandingan di Elixir sebagian besar sama dengan yang disediakan di sebagian besar bahasa lain. Tabel berikut meringkas operator perbandingan di Elixir. Asumsikan variabelA memegang 10 dan variabel B memegang 20, lalu -
Tunjukkan Contoh
Operator | Deskripsi | Contoh |
---|---|---|
== | Memeriksa apakah nilai di kiri sama dengan nilai di kanan (Ketik nilai cetakan jika bukan jenis yang sama). | A == B akan memberikan nilai salah |
! = | Memeriksa apakah nilai di kiri tidak sama dengan nilai di kanan. | A! = B akan memberikan true |
=== | Memeriksa apakah jenis nilai di kiri sama dengan jenis nilai di kanan, jika ya maka periksa nilai yang sama. | A === B akan memberikan false |
! == | Sama seperti di atas tetapi memeriksa ketidaksetaraan, bukan kesetaraan. | A! == B akan memberikan true |
> | Memeriksa apakah nilai operan kiri lebih besar dari nilai operan kanan; jika ya, maka kondisinya menjadi benar. | A> B akan memberikan false |
< | Memeriksa apakah nilai operan kiri kurang dari nilai operan kanan; jika ya, maka kondisinya menjadi benar. | A <B akan memberikan true |
> = | Memeriksa apakah nilai operan kiri lebih besar dari atau sama dengan nilai operan kanan; jika ya, maka kondisinya menjadi benar. | A> = B akan memberikan false |
<= | Memeriksa apakah nilai operan kiri kurang dari atau sama dengan nilai operan kanan; jika ya, maka kondisinya menjadi benar. | A <= B akan memberikan true |
Operator logika
Elixir menyediakan 6 operator logika: dan, atau, tidak, &&, || dan!. Tiga yang pertama,and or notadalah operator Boolean yang ketat, artinya mereka mengharapkan argumen pertama mereka adalah Boolean. Argumen non Boolean akan menimbulkan kesalahan. Sedangkan tiga berikutnya,&&, || and !tidak ketat, jangan mengharuskan kami memiliki nilai pertama secara ketat sebagai boolean. Mereka bekerja dengan cara yang sama seperti rekan-rekan ketat mereka. Asumsikan variabelA berlaku dan variabel B memegang 20, lalu -
Tunjukkan Contoh
Operator | Deskripsi | Contoh |
---|---|---|
dan | Memeriksa apakah kedua nilai yang diberikan benar, jika ya maka mengembalikan nilai variabel kedua. (Logis dan). | A dan B akan memberi 20 |
atau | Memeriksa apakah salah satu nilai yang diberikan benar. Mengembalikan nilai mana pun yang benar. Lain mengembalikan false. (Logis atau). | A atau B akan memberikan true |
tidak | Operator unary yang membalik nilai input yang diberikan. | bukan A akan memberikan false |
&& | Tidak ketat and. Bekerja sama sepertiand tetapi tidak mengharapkan argumen pertama menjadi Boolean. | B && A akan memberi 20 |
|| | Tidak ketat or. Bekerja sama sepertior tetapi tidak mengharapkan argumen pertama menjadi Boolean. | B || A akan memberikan kebenaran |
! | Tidak ketat not. Bekerja sama sepertinot tetapi tidak mengharapkan argumen menjadi Boolean. | ! A akan memberikan false |
NOTE −dan , atau , && dan || || adalah operator sirkuit pendek. Artinya jika argumen pertamaandsalah, maka itu tidak akan memeriksa lebih lanjut untuk yang kedua. Dan jika argumen pertamaorbenar, maka itu tidak akan memeriksa yang kedua. Sebagai contoh,
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
Operator Bitwise
Operator bitwise bekerja pada bit dan melakukan operasi bit demi bit. Elixir menyediakan modul bitwise sebagai bagian dari paketBitwise, jadi untuk menggunakannya, Anda perlu menggunakan modul bitwise. Untuk menggunakannya, masukkan perintah berikut di shell Anda -
use Bitwise
Asumsikan A menjadi 5 dan B menjadi 6 untuk contoh berikut -
Tunjukkan Contoh
Operator | Deskripsi | Contoh |
---|---|---|
&&& | Bitwise dan operator menyalin sedikit ke hasil jika ada di kedua operan. | A &&& B akan memberikan 4 |
|| Necklace | Bitwise atau operator menyalin sedikit ke hasil jika ada di salah satu operan. | A ||i> B akan memberikan 7 |
>>> | Operator bitwise right shift menggeser bit operan pertama ke kanan dengan nomor yang ditentukan di operan kedua. | A >>> B akan memberi 0 |
<<< | Operator bitwise left shift menggeser bit operan pertama ke kiri dengan nomor yang ditentukan di operan kedua. | A <<< B akan menghasilkan 320 |
^^^ | Operator Bitwise XOR menyalin sedikit ke hasil hanya jika berbeda pada kedua operan. | A ^^^ B akan memberikan 3 |
~~~ | Bitwise unary tidak membalikkan bit pada nomor yang diberikan. | ~~~ A akan memberikan -6 |
Operator Misc
Selain operator di atas, Elixir juga menyediakan berbagai operator sejenisnya Concatenation Operator, Match Operator, Pin Operator, Pipe Operator, String Match Operator, Code Point Operator, Capture Operator, Ternary Operator yang membuatnya menjadi bahasa yang cukup kuat.
Tunjukkan Contoh