W przeciwieństwie do C++ dokładnie określono sposób reprezentacji tych danych. Niezależnie więc od tego, na jakim systemie pracujemy (16-, 32- czy 64-bitowym), dokładnie wiadomo, na ilu bitach zapisa-na jest zmienna danego typu. Wiadomo też dokładnie, z jakiego zakresu wartości może ona przyjmować, nie ma więc dowolności, która w przypadku języka C mogła prowadzić do sporych trudności przy przenoszeniu programów pomiędzy różnymi platformami. W tabeli 2.1 zaprezentowano zakresy poszczególnych typów danych oraz liczbę bitów niezbędną do zapisania zmiennych danego typu. Tabela 2.1. Zakresy typów arytmetycznych w Javie Typ Liczba bitów Liczba bajtów Zakres byte 8 1 od –128 do 127 short 16 2 od –32 768 do 32 767 int 32 4 od –2 147 483 648 do 2 147 483 647 long 64 8 od –9 223 372 036 854 775 808 do 9 223 372 036 854 775 807 Typy zmiennoprzecinkowe Typy zmiennoprzecinkowe występują tylko w dwóch odmianach: q float (pojedynczej precyzji), q double (podwójnej precyzji). Zakres oraz liczbę bitów i bajtów potrzebnych do zapisu tych zmiennych prezentuje tabela 2.2. Rozdział 2. • Zmienne, operatory i instrukcje 19 Tabela 2.2. Zakresy dla typów zmiennoprzecinkowych w Javie Typ Liczba bitów Liczba bajtów Zakres float 32 4 od –3,4e38 do 3,4e38 double 64 8 od –1,8e308 do 1,8e308 Format danych float i double jest zgodny ze specyfikacją standardu ANSI/IEEE 754. Zapis 3,4e48 oznacza 3,4 * 1038. Typ boolean Jest to typ logiczny. Może on reprezentować jedynie dwie wartości: true (prawda) i false (fałsz). Może być wykorzystywany przy spraw-dzaniu różnych warunków w instrukcjach if, a także w pętlach i in-nych konstrukcjach programistycznych, które zostaną przedstawione w dalszej części rozdziału. Typ char Typ char służy do reprezentacji znaków (liter, znaków przestankowych, ogólnie wszelkich znaków alfanumerycznych), przy czym w Javie jest on 16-bitowy i zawiera znaki Unicode. Ponieważ znaki reprezen-towane są tak naprawdę jako 16-bitowe kody liczbowe, typ ten zali-cza się czasem do typów arytmetycznych. Deklarowanie zmiennych typów podstawowych Aby móc użyć jakiejś zmiennej w programie, najpierw trzeba ją zadeklarować, tzn. podać jej typ oraz nazwę. Ogólna deklaracja wyglą- da następująco: typ_zmiennej nazwa_zmiennej; Po takiej deklaracji zmienna jest już gotowa do użycia, tzn. możemy jej przypisywać różne wartości bądź też wykonywać na niej różne operacje, np. dodawanie. Przypisanie wartości zmiennej odbywa się przy użyciu znaku (operatora) =. 20 Java • Ćwiczenia praktyczne Ć W I C Z E N I E 2.1. Deklarowanie zmiennych Zadeklaruj dwie zmienne całkowite i przypisz im dowolne wartości. Wyniki wyświetl na ekranie (rysunek 2.1). Rysunek 2.1. Wynik działania programu z ćwiczenia 2.1 public class Main { public static void main (String args[]) { int pierwszaLiczba; int drugaLiczba; pierwszaLiczba = 10; drugaLiczba = 20; System.out.println ("pierwsza liczba: " + pierwszaLiczba); System.out.println ("druga liczba: " + drugaLiczba); } } Instrukcja System.out.println pozwala wyprowadzić ciąg znaków na ekran. Wartość zmiennej można również przypisać już w trakcie deklaracji, pisząc: typ_zmiennej nazwa_zmiennej = wartość; Można również zadeklarować wiele zmiennych danego typu, oddzie-lając ich nazwy przecinkami. Część z nich może być też od razu za-inicjowana: typ_zmiennej nazwa1, nazwa2, nazwa3; typ_zmiennej nazwa1 = wartość1, nazwa2, nazwa3 = wartość2; Zmienne w Javie, podobnie jak w C czy C++, ale inaczej niż w Pas-calu, można deklarować wedle potrzeb wewnątrz funkcji czy metody. Rozdział 2. • Zmienne, operatory i instrukcje 21 Ć W I C Z E N I E 2.2. Jednoczesna deklaracja i inicjacja zmiennych Zadeklaruj i jednocześnie zainicjalizuj dwie zmienne typu całkowitego. Wynik wyświetl na ekranie. public class Main { public static void main (String args[]) { int pierwszaLiczba = 10; int drugaLiczba = 20;
|