background image

Przemysław Wionczyk

JAVA

Operatory

Operatory

1 / 11

background image

Przemysław Wionczyk

JAVA

Grupy operatorów

Operatory możemy podzielić na kilka zestawów tematycznych:

arytmetyczne,

bitowe,

logiczne,

przypisania,

porównania.

2 / 11

background image

Przemysław Wionczyk

JAVA

Operatory arytmetyczne

Mamy tu 4 zwykłe operatory działań, które są dobrze znane. To na 

co   trzeba   zwrócić   uwagę,   to   fakt   iż   dzieląc   dwie   liczby   całkowite 

otrzymamy w wyniku również liczbę całkowitą. Zatem działanie 5 / 3 da 

wynik 1. Jeśli chcemy mieć wynik rzeczywisty, to musimy co najmniej 

jedną z liczb zapisać jako liczbę rzeczywistą, np. 5.0 / 3 da nam wynik 

1.666666667. Dodatkowym operatorem jest operator dzielenia modulo, 

który   używa   symbolu   procenta.   Zwraca   resztę   z   dzielenia,   czyli   dla 

działania 5 % 3 zwróci wynik 2.

3 / 11

background image

Przemysław Wionczyk

JAVA

Operatory arytmetyczne

Oprócz standardowych wersji  operatorów arytmetycznych mamy 

jeszcze, tak jak w C++, wersje skrócone:

a += b;

zastępuje

a = a + b;

a –= b;

zastępuje

a = a – b;

a *= b;

zastępuje

a = a * b;

a /= b;

zastępuje

a = a / b;

a %= b;

zastępuje

a = a % b;

4 / 11

background image

Przemysław Wionczyk

JAVA

Operatory arytmetyczne

Do grona operatorów arytmetycznych zaliczamy również operatory 

inkrementacji i dekrementacji. Są one jak w C++ w dwóch wersjach: 

przedrostkowej (++x) i przyrostkowej (x++). Przeanalizujmy kod:

int a = 2;
System.out.println(++x);
System.out.println(x++);

W   drugiej   linijce   mamy   inkrementację   przedrostkową,   jest   ona 

wykonywana   przed   wykonaniem   całej   instrukcji   wypisania   napisu   na 

konsoli,   w   trzeciej   linijce   najpierw   następuje   wypisanie,   a   potem 

inkrementacja. Zatem na ekranie zobaczymy dwie liczby 3.

5 / 11

background image

Przemysław Wionczyk

JAVA

Przekroczenie zakresu

Gdy do zmiennej typu byte będziemy chcieli przypisać liczbę 130, 

otrzymamy w wyniku błąd przekroczenia zakresu. Java radzi sobie z tym 

na dwa sposoby, zależnie od momentu w którym nastąpi błąd:

jeżeli błąd zostanie wykryty w momencie kompilacji (np. gdy w 

kodzie napiszemy byte b = 130;) to program nie skompiluje się,

jeżeli błąd zostanie wykryty w trakcie działania programu (np. gdy 

przypiszemy byte b = a * c; gdzie a i c będą dużymy liczbami 

wczytanymi   od   użytkownika)   to   liczba   zostanie   zawinięta   do 

wartości typu byte (np. ze 130 zrobi się -128+3=-125).

6 / 11

background image

Przemysław Wionczyk

JAVA

Operatory logiczne

Mamy trzy podstawowe operatory znane z logiki matematycznej:

&&

odpowiednik koniunkcji

||

odpowiednik alternatywy

!

odpowiednik negacji

Działają one na wyrażeniach, które mają wartość logiczną, czyli o 

których można stwierdzić czy mają wartość true czy false.

7 / 11

background image

Przemysław Wionczyk

JAVA

Operatory przypisania

W   Javie   jako   operator   przypisania   używamy,   tak   jak   w   C++, 

pojedynczego znaku równości. Np.:

int a = b + c / d;
float b = 23.34f;

Do   operatorów   przypisania   możemy   zaliczyć   również   skrócone 

wersje operatorów arytmetycznych opisanych na stronie 4.

8 / 11

background image

Przemysław Wionczyk

JAVA

Operatory porównania

Operatory   relacyjne   porównują   wartości   liczbowe   i   zwracają 

wartość logiczną true lub false. Mamy do dyspozycji operatory:

==

a == b zwraca true jeśli a i b ma tą samą wartość

!=

a == b zwraca true jeśli a i b mają różne wartości

>

<

>=

<=

9 / 11

background image

Przemysław Wionczyk

JAVA

Zadania

1. Napisz   program   składający   się     jednej   klasy   o   nazwie 

„DzialaniaArytmetyczne”. W programie zadeklaruj dwie zmienne 

całkowite typu int i przypisz im wartości 450 oraz 13. Wypisz na 

wyjściu   wyniki   4   podstawowych   działań   arytmetycznych 

wykonanych na tych dwóch zmiennych. Dopisz analogiczny kod 

dla   innych   typów   całkowitych.   Jaki   wniosek   można   wysnuć   na 

temat dzielenia liczb całkowitych?

10 / 11

background image

Przemysław Wionczyk

JAVA

Zadania

2. Napisz   program   składający   się     jednej   klasy   o   nazwie 

„DzialaniaArytmetyczne2”. W programie zadeklaruj dwie zmienne 

zmiennoprzecinkowe   i   przypisz   im   wartości   45.23   oraz   13.12. 

Wypisz   na   wyjściu   wyniki   4   podstawowych   działań 

arytmetycznych   wykonanych   na   tych   dwóch   zmiennych.   Dopisz 

analogiczny kod dla drugiego typu zmiennoprzecinkowego.

11 / 11