background image

Java 

Podstawy 

Podstawowe typy danych 

 

Michał Bereta 

www.michalbereta.pl

 

mbereta@pk.edu.pl 

background image

Typy 

Java jest językiem statycznie typowanym, tzn., że każda 

zmienna / każdy obiekt musi mied ściśle określony typ i typ 

ten nie może ulec zmianie. 

 
Przed użyciem każda zmienna musi mied określoną nazwę i 

typ. 

 
Np. 
 
int x; 
String imie; 
Osoba pracownik; 

background image

Typy 

Typy 
• Wbudowane 

– int  
– double 
– String 
– itd. 

• Zdefiniowane przez programistę za pomocą: 

– class 
– interface 

 

background image

Typy podstawowe  

(ang. primitive

• byte  
• short 
• int  
• long 
• float 
• double 
• boolean 
• char 
• String 

background image

Typy podstawowe  

(ang. primitive

Typy całkowite 
 
• byte  

– 8-bitowy 
– [-128, 127] 

• short 

– 16-bitowy 
– [-32 768 , 32 767] 

• int  

– 32-bitowy 
– [-2,147,483,648 ; 2,147,483,647 ] 

• long 

– 64-bitowy 
– [-9,223,372,036,854,775,808  ;  9,223,372,036,854,775,807] 

background image

Typy podstawowe  

(ang. primitive

• float 

– 32-bitowe liczby zmiennoprzecinkowe 

 

• double 

– 64-bitowe liczby zmiennoprzecinkowe 

 
Jeśli wymagana jest określona dokładnośd (np. operacje 

finansowe na walutach) lepiej użyd typu 

zdefiniowanego przez klasę: 

 
java.math.BigDecimal 

 

background image

Typy podstawowe  

(ang. primitive

• boolean 

– Tylko dwie możliwe wartości: { true, false} 
– Reprezentuje 1 bit informacji, lecz rozmiar nie jest 

zdefiniowany 

 

• char 

– 16-bitowy typ znakowy Unicode 
– * ‘\u0000’ ; ‘\uffff’ + 

 

• String 

– java.lang.String 

background image

Typy 

Wartości domyślne 
(dla zmiennych składowych klasy) 

background image

Typy 

Uwaga! Zmienne lokalne (w funkcji) nie mają 
przypisywanych wartości domyślnych! 
 
Należy to zrobid własnoręcznie przed 
pierwszym użyciem. 

Zmienna będąca 
częścią klasy ma 
przypisywaną 
wartośd domyślną 
właściwą dla jej 
typu. 

background image

Typy 

Ok! 

background image

Typy 

Również ok! 

Domyślna wartośd dla int 

background image

Typy 

Literały - stałe reprezentacje wartości 
 
np. true, false, 1000, 14.4, “dom”, ‘F’ 
 

background image

Typy 

• Literały liczb całkowitych określają typ int, np. 

– 21 jest traktowane jako int 

• Jeśli na koocu stoi litera ‘L’ lub ‘l’ (małe L, nie 

mylid z 1 – jedynką), to typem jest long 

– np. 21L jest tratowany jak typ long 

background image

Typy 

• Literały całkowite mogą byd reprezentowane 

w systemach o różnej podstawie 

 
 

Ta sama wartośd 26 

background image

Typy 

• Literały wartości 

zmiennoprzecinkowych 

– Kooczą się na ‘F’ lub ‘f’ dla 

typu float 

– Domyślnie jest typ double 

(opcjonalnie ‘D’ lub ‘d’) 

– Notacja naukowa:  

• Np. 12.3e2 = 12.3 * 10

• Np. 12.3e-2 = 12.3 * 10

-2

   

background image

Typy 

Typ znakowy char 
 
 \b (backspace) 
 \t (tab) 
 \n (line feed) 
 \f (form feed) 
 \r (carriage return) 
 \" (double quote) 
 \' (single quote) 
 \\ (backslash) 
 

background image

Typy 

• Literał null 
• Może byd użyty do typów “referencyjnych 
• Oznacza, że referencja nie wskazuje na żaden obiekt 
 
Np. 
 
String znaki = null; 
 
ale  
 
int x  = null;  // BŁĄD ! 

Uwaga! 
 
null nie oznacza łaocucha pustego "" 
 

background image

Typy 

• Od wersji 7, w literałach liczbowych można 

umieszczad pomiędzy cyframi dowolną liczbę 
znaków podkreślenie (w celu bardziej 
czytelnego zapisu) 

background image

Typy 

Poprawnie 

background image

Typy 

Niepoprawnie 

background image

Tablice 

• Tablica jest kontenerem przechowującym 

wartości / obiekty tego samego typu. 

• Długośd tablicy jest określona i ustalona 

podczas jej tworzenia. 

• Długośd nie może ulec zmianie 
• Wartośd każdy elementu można pobrad znając 

jego indeks 

• Indeksowanie zaczyna się od zera 

background image

Tablice 

background image

Tablice 

background image

Tablice 

nazwa typu 

oznaczenie tablicy 

nazwa zmiennej  

background image

Tablice 

• Tworzenie na podstawie listy elementów 

background image

Tablice 

• W javie można tworzyd tablice wielowymiarowe 

– Elementem tablicy w danym wymiarze jest tablica np. 

 
 
 
 
 

– Tablice będące elementami tablicy wielowymiarowej 

mogą byd różnej długości 

background image

Tablice 

• Tablice wielowymiarowe 

background image

Tablice 

• Kopiowanie 

skąd 

odkąd 

dokąd 

ile 

dokąd (pozycja startowa) 

background image

Tablice 

background image

Intermezzo 

Liczby losowe 

background image

Zadanie 

Totolotek 1 
Wygeneruj i wypisz 6 losowych liczb z 
przedziału *1, 49+. 

Totolotek 2 
Wygeneruj i zapisz do tablicy 6 losowych liczb z 
przedziału *1, 49+. Wypisz wartości z tablicy. 

background image

Operatory 

Najwyższy 
priorytet 
(oznacza 
pierwszeostwo 
wykonania) 

background image

Operatory 

background image

Operatory 

Operator ‘+’ łączy obiekty typu String 

background image

Operatory 

background image

Operatory 

 

background image

Operatory 

• Sprawdzanie relacji między wartościami 

background image

Operatory 

• Operatory logiczne 

AND 

OR 

background image

Operatory 

• Operator ? : 
 

background image

Operatory 

Operacje przeprowadzane na każdej parze bitów 

oddzielnie 

• & - operator bitowego AND 
• | operator bitowego OR 
• ^ operator bitowego XOR