Wprowadzenie do operatorów Scala
Operatory służą do wykonywania obliczeń logicznych i matematycznych w dowolnym języku programowania. Scala ma również różne operatory do wykonywania różnych obliczeń i zadań, ale są one implementowane jako metody, ponieważ Scala jest językiem obiektowym, dlatego traktuje każdy symbol jako obiekt, a operacja jako metodę. Ułatwiają obliczenia.
Różni operatorzy obecni w Scali to:
- Operatory arytmetyczne
- Operatorzy przypisań
- Operatorzy relacyjni
- Operatory logiczne
- Operatory bitowe
Teraz przyjrzyjmy się szczegółowo każdemu operatorowi.
Operatory arytmetyczne Scala
Operatory te służą do wykonywania obliczeń matematycznych lub obliczeń.
Operator | Symbol | Wyjaśnienie | Format |
Dodanie | + | Dodaje oba operandy | x + y |
Odejmowanie | - | Odejmuje prawy operand od lewego | x - y |
Mnożenie | * | Mnoży oba operandy | x * y |
Podział | / | Podziel licznik przez mianownik | x / y |
Moduł | % | Zwraca resztę po podziale | x% y |
Przykład: operatory arytmetyczne w Scali
object Arith (
def main (args: Array (String)) (
var a = 10;
var b = 5;
println (a + b);
println (a – b);
println (a * b);
println (a / b);
println (a % b)
)
)
Wynik:
scala> Arith.main (null)
15
5
50
2)
0
Operatorzy przypisania Scala
Te operatory służą do przypisywania wartości zmiennej lub obiektowi.
Operator | Symbol | Wyjaśnienie | Format |
Zadanie | = | Przypisuje wartość prawego operandu do lewego operandu | x = y + z |
Dodanie | + = | Dodaje oba operandy i ostatecznie przypisuje wartość do lewego operandu | x + = y |
Odejmowanie | - = | Odejmuje prawy operand od lewego, a następnie przypisuje wartość lewemu operandowi | x - = y |
Mnożenie | * = | Mnoży oba operandy i przypisuje wartość do lewego operandu | x * = y |
Podział | / = | Dzieli lewy operand przez prawy operand i przypisuje wartość lewemu operandowi | x / = y |
Moduł | % = | Ocenia moduł dwóch argumentów i przypisuje wartość lewemu argumentowi | x% = y |
Bitowe AND | I = | Porównuje wartość binarną dwóch argumentów, zwraca 1, jeśli oba argumenty mają wartość 1, w przeciwnym razie zwraca 0 i przypisuje wartość do lewego argumentu | x i = 5 |
Bitowe OR | | = | Porównuje wartość binarną dwóch argumentów, zwraca 0, jeśli oba argumenty mają wartość 0, w przeciwnym razie zwraca 1 i przypisuje wartość lewemu argumentowi | x | = 5 |
Bitowy XOR | = | Porównuje wartość binarną dwóch operandów, zwraca 0, jeśli oba operandy są takie same, w przeciwnym razie zwraca 1 i przypisuje wartość do lewego operandu | x = 5 |
Przesunięcie w lewo | << = | Przesuwa bity w lewo i przypisuje wynik do lewego operandu | x << = 5 |
Prawa zmiana | >> = | Przesuwa bity w prawo i przypisuje wynik do lewego operandu | x >> = 5 |
Przykład: operatory przypisania w Scaliobject Assign (
def main (args: Array (String)) (
var a = 10;
var b = 5;
println (a += b);
println (a –= b);
println (a *= b);
println (a /= b);
println (a %= b);
a = 20;
b = 15;
println (a &= b);
println (a |= b);
println (a ^= b);
println (a <<= 2);
println (a >>= 2);
)
)
Wynik:
scala> Assign.main (null)
15
10
50
10
0
4
11
4
16
4
Scala Operatory relacyjne
Operatorzy ci zwracają wartość logiczną po sprawdzeniu wspomnianych warunków.
Operator | Symbol | Wyjaśnienie | Format |
Równy | == | Zwraca true, jeśli oba operandy są równe, w przeciwnym razie zwraca false | x == y |
Nie równy | ! = | Zwraca true, jeśli oba operandy nie są równe, w przeciwnym razie zwraca false | x! = y |
Lepszy niż | > | Zwraca true, jeśli lewy operand jest większy niż prawy, w przeciwnym razie zwraca false | x> y |
Mniej niż | < | Zwraca true, jeśli lewy operand jest mniejszy niż prawy, w przeciwnym razie zwraca false | x <y |
Większe bądź równe | > = | Zwraca true, jeśli lewy operand jest większy lub równy prawej, w przeciwnym razie zwraca false | x> = y |
Mniejszy lub równy | <= | Zwraca true, jeśli lewy operand jest mniejszy lub równy prawej, w przeciwnym razie zwraca false | x <= y |
Przykład: Operatory relacyjne w scala
object Relation (
def main (args: Array (String)) (
var a = 10;
var b = 5;
println (a == b);
println (a != b);
println (a > b);
println (a < b);
println (a >= b);
println (a <= b);
)
)
Wynik:
scala> Relation.main (null)
fałszywy
prawdziwe
prawdziwe
fałszywy
prawdziwe
fałszywy
Scala Operator logiczny
Operatory te zwracają również wartość logiczną zgodnie z danymi wejściowymi lub operandami.
Operator | Symbol | Wyjaśnienie | Format |
Logiczne AND | I & | Zwraca true, jeśli oba operandy są niezerowe, w przeciwnym razie zwraca false | x && y |
Logiczne OR | || | Zwraca true, jeśli jeden z operandów jest niezerowy, w przeciwnym razie zwraca false | x || y |
Logiczne NIE | ! | Odwraca operand. Zwraca true dla false i odwrotnie | ! x |
Przykład: operatory logiczne w Scali
object Logic (
def main (args: Array (String)) (
var a = true;
var b = false;
println (a && b);
println (a || b);
println !(b);
)
)
Wynik:
scala> Logic.main (null)
fałszywy
prawdziwe
prawdziwe
Scala Bitwise Operators
Operatory te pracują na bitach i zwracają odpowiednią wartość całkowitą jako wynik.
Operator | Symbol | Wyjaśnienie | Format |
Binarny ORAZ | I | Sprawdź argumenty bitowo i zwróć 1, jeśli oba bity mają wartość 1, w przeciwnym razie zwróć 0 | x i y |
Binarny LUB | | | Sprawdź argumenty bitowo i zwróć 0, jeśli oba bity mają wartość 0, w przeciwnym razie zwróć 1 | x | y |
Binarny XOR | ^ | Sprawdź argumenty bitowo i zwróć 0, jeśli oba bity są takie same, w przeciwnym razie zwróć 1 | x y |
NIE Binarne | ~ | Zwraca uzupełnienia, tj. Zmiany od 1 do 0 i odwrotnie | ~ x |
Binarne lewe przesunięcie | << | Bity lewego operandu są przesuwane po lewej stronie o liczbę bitów wymienionych przez prawy operand | x << 3 |
Binarna prawa zmiana | >> | Bity lewego operandu są przesuwane po prawej stronie o liczbę bitów wymienionych przez prawy operand | x >> 3 |
Wypełnienie zerowe binarne prawe przesunięcie | >>> | Bity lewego operandu są przesuwane po prawej stronie o liczbę bitów wspomnianych przez prawy operand, a przesunięte wartości są podstawianymi zerami. | x >>> 3 |
Przykład: Operatory bitowe w Scali
object Bit (
def main (args: Array (String)) (
var a = 10;
var b = 5;
println (a & b);
println (a | b);
println (a b);
println ( ~ b);
a = 16;
b = 12;
println (a >> b);
println (a << b);
println (a >>> b);
)
)
Wynik:
scala> Bit. główny (zero)
0
15
15
10
4
64
4
Polecane artykuły
To był przewodnik dla operatorów Scala. W tym miejscu omawiamy przykłady operatorów Scala, takich jak operatory arytmetyczne, operatory przypisania, operatory relacyjne, operatory logiczne i operatory bitowe. Możesz także przejrzeć następujące artykuły, aby dowiedzieć się więcej -
- Zastosowania Scali
- Haskell vs Scala
- Scala: podejście funkcjonalne
- Operatory MySQL