Perl - operatory

Co to jest operator?

Prostej odpowiedzi można udzielić za pomocą wyrażenia 4 + 5 równa się 9 . Tutaj 4 i 5 nazywamy operandami, a + nazywamy operatorem. Język Perl obsługuje wiele typów operatorów, ale poniżej znajduje się lista ważnych i najczęściej używanych operatorów -

  • Operatory arytmetyczne
  • Operatory równości
  • Operatory logiczne
  • Operatory przypisania
  • Operatory bitowe
  • Operatory logiczne
  • Operatory podobne do kwotowań
  • Różni operatorzy

Przyjrzyjmy się kolejno wszystkim operatorom.

Operatory arytmetyczne Perla

Przyjmij zmienną $a holds 10 and variable $b zawiera 20, a następnie znajdują się operatory arytmatyczne Perla -

Pokaż przykład

Sr.No. Operator i opis
1

+ ( Addition )

Dodaje wartości po obu stronach operatora

Example - $a + $b da 30

2

- (Subtraction)

Odejmuje operand prawej ręki od operandu lewej ręki

Example - $a - $b da -10

3

* (Multiplication)

Mnoży wartości po obu stronach operatora

Example - $a * $b da 200

4

/ (Division)

Dzieli operand lewej ręki przez operand prawej ręki

Example - $b / $a da 2

5

% (Modulus)

Dzieli operand po lewej stronie przez operand po prawej stronie i zwraca resztę

Example - $b % $a da 0

6

** (Exponent)

Wykonuje obliczenia wykładnicze (potęgowe) na operatorach

Example - $a**$b da 10 do potęgi 20

Operatory równości Perla

Nazywa się je również operatorami relacyjnymi. Przyjmij zmienną$a holds 10 and variable $b zawiera zatem 20, sprawdźmy następujące numeryczne operatory równości -

Pokaż przykład

Sr.No. Operator i opis
1

== (equal to)

Sprawdza, czy wartości dwóch operandów są równe, czy nie, jeśli tak, warunek staje się prawdziwy.

Example - ($a == $b) nie jest prawdą.

2

!= (not equal to)

Sprawdza, czy wartości dwóch operandów są równe, czy nie, jeśli wartości nie są równe, warunek staje się prawdziwy.

Example - ($a != $b) jest prawdą.

3

<=>

Sprawdza, czy wartości dwóch operandów są równe, czy nie, i zwraca wartość -1, 0 lub 1 w zależności od tego, czy lewy argument jest liczbowo mniejszy, równy lub większy niż prawy argument.

Example - ($a <=> $b) zwraca -1.

4

> (greater than)

Sprawdza, czy wartość lewego operandu jest większa niż wartość prawego operandu. Jeśli tak, warunek staje się prawdziwy.

Example - ($a > $b) nie jest prawdą.

5

< (less than)

Sprawdza, czy wartość lewego operandu jest mniejsza niż wartość prawego operandu, jeśli tak, warunek staje się prawdziwy.

Example - ($a < $b) jest prawdą.

6

>= (greater than or equal to)

Sprawdza, czy wartość lewego operandu jest większa lub równa wartości prawego operandu, jeśli tak, warunek staje się prawdziwy.

Example - ($a >= $b) nie jest prawdą.

7

<= (less than or equal to)

Sprawdza, czy wartość lewego operandu jest mniejsza lub równa wartości prawego operandu, jeśli tak, warunek staje się prawdziwy.

Example - ($a <= $b) jest prawdą.

Poniżej znajduje się lista operatorów akcji. Przyjmij zmienną$a holds "abc" and variable $b przechowuje wtedy "xyz", sprawdźmy następujące operatory równości łańcuchów -

Pokaż przykład

Sr.No. Operator i opis
1

lt

Zwraca prawdę, jeśli lewy argument jest mniejszy niż prawy argument.

Example - ($a lt $b) jest prawdą.

2

gt

Zwraca prawdę, jeśli lewy argument jest ciągiem większy niż prawy argument.

Example - ($a gt $b) jest fałszywa.

3

le

Zwraca prawdę, jeśli lewy argument jest ciągowo mniejszy lub równy prawemu argumentowi.

Example - ($a le $b) jest prawdą.

4

ge

Zwraca prawdę, jeśli lewy argument jest ciągiem większy lub równy prawemu argumentowi.

Example - ($a ge $b) jest fałszywa.

5

eq

Zwraca prawdę, jeśli lewy argument jest ciągiem równy prawemu argumentowi.

Example - ($a eq $b) jest fałszywa.

6

ne

Zwraca prawdę, jeśli lewy argument nie jest równy prawemu argumentowi.

Example - ($a ne $b) jest prawdą.

7

cmp

Zwraca wartość -1, 0 lub 1 w zależności od tego, czy lewy argument jest ciągiem mniejszy niż, równy lub większy niż prawy argument.

Example - ($a cmp $b) wynosi -1.

Operatory przypisania Perla

Przyjmij zmienną $a holds 10 and variable $b zawiera 20, poniżej znajdują się operatory przypisania dostępne w Perlu i ich użycie -

Pokaż przykład

Sr.No. Operator i opis
1

=

Prosty operator przypisania, przypisuje wartości z operandów po prawej stronie do argumentów po lewej stronie

Example - $c = $a + $b will assigned value of $a + $b into $do

2

+=

Dodaj operator przypisania AND, dodaje prawy operand do lewego operandu i przypisuje wynik do lewego operandu

Example - $c += $a jest równoważne $c = $c + $ a

3

-=

Operator odejmowania AND przypisania, Odejmuje prawy operand od lewego operandu i przypisuje wynik do lewego operandu

Example - $ c - = $a is equivalent to $c = $c - $za

4

*=

Operator przypisania mnożenia AND, mnoży prawy operand przez lewy operand i przypisuje wynik do lewego operandu

Example - $c *= $a jest równoważne $c = $c * $ a

5

/=

Operator dzielenia AND przypisania, Dzieli lewy operand z prawym operandem i przypisuje wynik do lewego operandu

Example - $ c / = $a is equivalent to $c = $c / $za

6

%=

Operator przypisania modułu AND, pobiera moduł przy użyciu dwóch operandów i przypisuje wynik do lewego operandu

Example - $c %= $a jest równoważne $c = $c% a

7

**=

Operator przypisania wykładnika AND, wykonuje obliczenia wykładnicze (potęgowe) na operatorach i przypisuje wartość do lewego operandu

Example - $c **= $a jest równoważne $c = $c ** $ a

Operatory bitowe Perla

Operator bitowy działa na bitach i wykonuje operacje bit po bicie. Załóżmy, że $ a = 60; i $ b = 13; Teraz w formacie binarnym będą one następujące -

$ a = 0011 1100

$ b = 0000 1101

-----------------

$ a & $ b = 0000 1100

$ a | $ b = 0011 1101

$ a ^ $ b = 0011 0001

~ $ a = 1100 0011

Istnieją następujące operatory bitowe obsługiwane przez język Perl, załóżmy, że $a = 60; and $b = 13

Pokaż przykład

Sr.No. Operator i opis
1

&

Operator binarny AND kopiuje trochę do wyniku, jeśli istnieje w obu operandach.

Example - ($a & $b) da 12, czyli 0000 1100

2

|

Operator binarny OR kopiuje bit, jeśli istnieje w operandzie.

Example - ($a | $b) da 61, czyli 0011 1101

3

^

Binarny operator XOR kopiuje bit, jeśli jest ustawiony w jednym operandzie, ale nie w obu.

Example - ($a ^ $b) da 49, czyli 0011 0001

4

~

Operator dopełniacza binarnego jest jednoargumentowy i ma efekt „przerzucania” bitów.

Example - (~ $ a) da -61, czyli 1100 0011 w postaci uzupełnienia do 2 ze względu na liczbę binarną ze znakiem.

5

<<

Binarny operator przesunięcia w lewo. Wartość lewego operandu jest przesuwana w lewo o liczbę bitów określoną przez prawy operand.

Example - $ a << 2 da 240, czyli 1111 0000

6

>>

Binarny operator przesunięcia w prawo. Wartość lewego operandu jest przesuwana w prawo o liczbę bitów określoną przez prawy operand.

Example - $ a >> 2 daje 15, czyli 0000 1111

Operatory logiczne Perla

Istnieją następujące operatory logiczne obsługiwane przez język Perl. Załóżmy, że zmienna $ a zawiera prawdę, a zmienna $ b ma wartość fałsz -

Pokaż przykład

Sr.No. Operator i opis
1

and

Nazywany operatorem logicznym AND. Jeśli oba operandy są prawdziwe, wtedy warunek staje się prawdziwy.

Example - ($ a i $ b) jest fałszem.

2

&&

Operator logiczny AND w stylu C kopiuje bit do wyniku, jeśli istnieje w obu operandach.

Example - ($ a && $ b) jest fałszem.

3

or

Nazywany operatorem logicznym OR. Jeśli którykolwiek z dwóch operandów jest niezerowy, wtedy warunek staje się prawdziwy.

Example - ($ a lub $ b) jest prawdziwe.

4

||

Operator logiczny OR w stylu C kopiuje bit, jeśli istnieje w operandzie.

Example - ($ a || $ b) jest prawdą.

5

not

Nazywany operatorem logicznym NOT. Służy do odwracania stanu logicznego operandu. Jeśli warunek jest spełniony, operator logiczny NOT spowoduje fałsz.

Example - not ($ a i $ b) jest prawdą.

Operatory podobne do kwotowań

Istnieją następujące operatory podobne do cytatów, obsługiwane przez język Perl. W poniższej tabeli {} oznacza dowolną wybraną parę separatorów.

Pokaż przykład

Sr.No. Operator i opis
1

q{ }

Obejmuje ciąg w apostrofach

Example - q {abcd} daje „abcd”

2

qq{ }

Obejmuje ciąg w podwójnych cudzysłowach

Example - qq {abcd} daje „abcd”

3

qx{ }

Obejmuje ciąg w cudzysłowach odwróconych

Example - qx {abcd} daje „abcd”

Różni operatorzy

Istnieją różne operatory obsługiwane przez język Perl. Załóżmy, że zmienna a zawiera 10, a zmienna b 20, a następnie -

Pokaż przykład

Sr.No. Operator i opis
1

.

Operator binarny kropka (.) Łączy dwa ciągi.

Example - Jeśli $ a = "abc", $b = "def" then $a. $ b da "abcdef"

2

x

Operator powtórzenia x zwraca ciąg składający się z lewego operandu powtórzonego tyle razy, ile określono przez prawy operand.

Example - ('-' x 3) da ---.

3

..

Operator zakresu .. zwraca listę wartości zliczanych (w górę o jedności) od lewej wartości do prawej wartości

Example - (2..5) da (2, 3, 4, 5)

4

++

Operator Auto Increment zwiększa wartość całkowitą o jeden

Example - $ a ++ da 11

5

--

Operator Auto Decrement zmniejsza wartość całkowitą o jeden

Example - $ a-- daje 9

6

->

Operator strzałki jest najczęściej używany do wyłuskiwania metody lub zmiennej z obiektu lub nazwy klasy

Example - $ obj->$a is an example to access variable $a z obiektu $ obj.

Pierwszeństwo operatorów Perla

W poniższej tabeli wymieniono wszystkie operatory od najwyższego do najniższego priorytetu.

Pokaż przykład

left	terms and list operators (leftward)
left	->
nonassoc	++ --
right	**
right	! ~ \ and unary + and -
left	=~ !~
left	* / % x
left	+ - .
left	<< >>
nonassoc	named unary operators
nonassoc	< > <= >= lt gt le ge
nonassoc	== != <=> eq ne cmp ~~
left	&
left	| ^
left	&&
left	|| //
nonassoc	..  ...
right	?:
right	= += -= *= etc.
left	, =>
nonassoc	list operators (rightward)
right	not
left	and
left	or xor