Programowanie w języku Java - zmienne

Transkrypt

Programowanie w języku Java - zmienne
Programowanie w języku Java
Zmienne v1.00 130108
Nazwa zmiennej w Java może mieć dowolną długość, ale musi rozpoczynać się od
litery, znaku podkreślenia lub $.
Każda zmienna może przechowywać tylko określony typ danych. Prawie wszystkie
zmienne używane w Javie to zmienne składowe klasy. Poza tym istnieją typy podstawowe
i służą one do przechowywania liczb całkowitych (typy całkowitoliczbowe), rzeczywistych
(typy zmiennoprzecinkowe) oraz znaków i wartości logicznych.
Typy całkowitoliczbowe:
Nazwa
byte
short
int
long
Zakres
-27 – 27 - 1
-215 – 215 - 1
-231 – 231 - 1
-263 – 263 - 1
Przykładowa deklaracja zmiennej całkowitoliczbowej a
int a;
Przykładowa deklaracja i definicja zmiennej całkowitoliczbowej a równej 5
int a=5;
Domyślnie literały (wartości zmiennej) typu całkowitoliczbowego są typu int.
Można jednak wskazać, że dany literał ma być typu long poprzez dopisanie na końcu litery
L lub l.
Typy zmiennoprzecinkowe:
Nazwa
float
double
Zakres
-3.4E38 – 3.4E38
-1.7E308 – 1.7E308
Domyślnie literały (wartości zmiennej) typu całkowitoliczbowego są typu double.
Można jednak wskazać, że dany literał ma być typu float poprzez dopisanie na końcu
litery F lub f.
Przykładowa deklaracja zmiennej zmiennoprzecinkowej a
double a;
Przykładowa deklaracja i definicja zmiennej zmiennoprzecinkowej a równej 5,13
double a=5.13;
1z3
Programowanie w języku Java
Zmienne v1.00 130108
Obliczenia na liczbach całkowitych:
Podstawowe operatory to: +, -, *, /, % (reszta z dzielenia)
Obliczenia na krótkich typach całkowitoliczbowych:
Wszystkie operacje arytmetyczne na małych liczbach typu byte,short,int
wykonywane są w arytmetyce 32 – bitowej.
Jeśli w klasie zadeklarujemy:
short a=5;
short b=10;
short c = a+ b;
to a i b podnoszone są do typu int (domyślnego) i wtedy dodawanie dwóch intów nie
da nam typu short. Dlatego należy jawnie zrzutować wynik dodawania do (mniejszego) typu
short:
c=(short)(a+b);
W przypadku jawnego rzutowania do mniejszego typu może wystąpić utrata
informacji. Dlatego należy raczej unikać jawnego rzutowania.
Podobnie obliczenia na liczbach typu long wykonywane są arytmetyce 64 – bitowej.
Jeśli jeden z argumentów działania na typach całkowitoliczbowych jest typu long to
pozostałe argumenty są podnoszone do typu long i operacje wykonuje się w arytmetyce 64 –
bitowej.
W przypadku dzielenia przez 0 oraz obliczania reszty z dzielenia przez 0 zgłaszany
jest wyjątek java.lang.ArithmeticException
Obliczenia zmiennoprzecinkowe:
Podstawowe operatory to: +, -, *, /, % (reszta z dzielenia)
Błędy które mogą się pojawić:
a) wynik działania nie mieści się w danym zakresie
b) wynik dzielenia jest nieokreślony (przy dzieleniu zera przez zero)
W podanym przypadku
int liczba=0;
double wynik;
double jeden = 1.0;
wynik = jeden/liczba;
System.out.println("Wynik wynosi"+wynik);
otrzymamy komunikat Wynik wynosi Infinity.
2z3
Programowanie w języku Java
Zmienne v1.00 130108
Tworzenie wyrażeń algebraicznych.
1) Jeśli jedno z wyrażeń jest typu double, to pozostałe zostaną podniesione do typu
double.
2) Jeśli jedno wyrażenie jest typu float, to pozostałe zostaną podniesione do typu float.
3) Jeśli jedno z wyrażeń jest typu long, to pozostałe zostaną podniesione do typu long.
4) W pozostałych przypadkach stosuje się arytmetykę 32 – bitowa.
Funkcje matematyczne.
Funkcje matematyczne znajdziemy w bibliotece Math. Aby z niej skorzystać należy
użyć jej stałych lub funkcji:
np.:
Math.cos(3.14);
Math.cos(Math.PI);
Math.E;
Informacje dotyczące funkcji klasy Math znajdują się na stronie z dokumentacją
http://docs.oracle.com/javase/7/docs/api/index.html
Zadanie nr 1
Dla wartości zmiennych a=2 oraz b=3 oblicz wartość wyrażenia:
wynik =
sin( a 2 + a − 2 )
1 

π − cos 2  2
2 
a + b 
3z3