Java Podstawy

Exceptions – wyjątki

Wyjątek jest to obiekt który ma za zadanie ujawnienie nieprawidłowości w kodzie. Dzięki niemu możemy zabezpieczyć aplikacje przed nie przewidzianym zachowaniami. Wszystkie wyjątki są uporządkowane zgodnie z hierarchią dziedziczenia klas wyjątków: Klasą wspólną dla wszystkich wyjątków jest Throwable która dzieli się na Error oraz Exception. Natomiast klasa Exception dzieli się na dwie grupy: checked exceptions …

Exceptions – wyjątki Read More »

Klasa StringBuilder i StringBuffer

Metody dla tych klas są takie same i są one mutowalne. Rożnica pomiędzy klasami polega na możliwości zastosowania w systemie/programie wielowątkowej. Klasą która może być wykorzystana w wielowątkowości jest StringBuffer. Z drugiej jednak strony instancje klasy StringBuilder są nieznacznie szybsze od StringBuffer z powodu braku synchronizacji. W przypadku budowania długich napisów najlepiej jest korzystać z …

Klasa StringBuilder i StringBuffer Read More »

Metody klasy String

Kilka metod klasy String: Trzeba pamiętać że w obiektach String tak samo jak przy tablicach indeksowanie znaków zaczyna się od 0 length – zwraca długość łańcucha znaków String words = „Dziś jest poniedziałek”; System.out.println(words.length()); // 22 String productName = „Coca” + „Cola”; int length = productName.length(); // 8 contains – sprawdza czy w łańcuchu znaków …

Metody klasy String Read More »

Klasa String

Klasa String jest klasą wbudowaną w Javę. Służy ona do reprezentacji tekstów. String jest także obiektem i jest on immutable czyli niezmienny. Czyli raz utworzonego String nie da się zmienić. Wszystkie więc operacje które mogą „zmienić” Stringa tak naprawdę zwracają nowy zmieniony obiekt String. Ma to duże znaczenie w przypadku tworzenia dużej ilości napisów powstałych …

Klasa String Read More »

Operacje na strumieniach – metody

Strumienie wykorzystują następujące metody: filter() map() forEach() limit() count() flatMap() peek() allMatch() collectors() reduce() findFirst() min() max() Metoda filter () – zwraca strumień zawierający tylko te elementy dla których filtr zwrócił wartość true z oryginalnego strumienia. Filtrowanie najlepiej stosować na początku, wówczas pozostałe metody zostaną wykonane już tylko na przefiltrowanych wartościach. Warunek filtru może zostać …

Operacje na strumieniach – metody Read More »

Interface-Supplier

Interface Supplier jest jednym z interfejsów z którego korzystają strumienie. Metoda z tego interfejsu jest wykorzystywana w celu uniknięcia wygenerowania wyjątku przy zastosowaniu większej liczby niż 1 operacji typu terminal. Interfejs ten został wprowadzony w Java 8 (pakiet java.util.function). jest interfejs funkcyjny ( a więc możne wykorzystywać lambdy). Jedyna metodą jest metoda bez prametrowa/bez argumentowa: …

Interface-Supplier Read More »

Interface – stałe wartości

W interfejsach istnieje możliwość definiowania stałych. Są one jednak deklarowane automatycznie i niejawnie. Tak więc nie wpisujemy w kodzie słów static final: Zapis poniżej pomimo że wygląda na zmienną, tak naprawdę taką zmienną nie jest, gdyż w interfejsach taki zapis: public String LABEL = “Item of any Movie”;    oznacza wartość stałą. W interfejsach nie możemy …

Interface – stałe wartości Read More »

Interface – metody domyślne

Zanim powstały metody domyślne w interfejsach wszystkie klasy które implementowały dany interfejs musiały implementować metody danego interfejsu. Jeśli więc w kodzie naszego programu mieliśmy interfejs zaimplementowany np. przez 10 klas, dodanie metody do tego interfejsu powodowało, że wszystkie 10 klas musiało zostać zmienionych. Było to bardzo problematyczne w przypadku kiedy część klas implementujących dany interfejs …

Interface – metody domyślne Read More »

Strumienie – STREAM

Strumienie znajdują się one w pakiecie java.util.stream i jest to interfejs generyczny. Przetwarzają one dane w postaci strumieni oraz wykonują operacje na wielu elementach. Strumienie nie przechowują danych – nie są żadną strukturą danych, nie modyfikują i nie zmieniają źródła, na którym operują. W strumień można opakować dowolny zestaw danych. Dodatkowo strumienie nie muszą zawierać …

Strumienie – STREAM Read More »