Java Najlepsze rozwiazania zadan programistycznych Receptury Wydanie IV.pdf

(2425 KB) Pobierz
Tytuł oryginału: Java Cookbook: Problems and Solutions for Java Developers, 4th Edition
Tłumaczenie: Piotr Rajca
ISBN: 978-83-283-7086-9
© 2021 Helion SA
Authorized Polish translation of the English edition of Java Cookbook, 4th Edition ISBN 9781492072584 ©
2020 RejmiNet Group, Inc.
This translation is published and sold by permission of O’Reilly Media, Inc.,
which owns or controls all rights to publish and sell the same.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Helion SA dołożyli wszelkich starań, by zawarte w tej książce informacje były kompletne
i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym
ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Helion SA nie ponoszą również
żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce.
Helion SA
ul. Kościuszki 1c, 44-100 Gliwice
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/jarec4
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis treści
Wstęp ....................................................................................................................... 13
1. Rozpoczynanie pracy: kompilacja i uruchamianie ....................................................... 27
1.0. Wprowadzenie
1.1. Kompilacja i uruchamianie programów napisanych w Javie — JDK
1.2. Kompilacja i uruchamianie: stosowanie GraalVM dla lepszej wydajności
1.3. Kompilacja, uruchamianie i testowanie programów przy użyciu IDE
1.4. Poznawanie Javy przy wykorzystaniu JShell
1.5. Efektywne wykorzystanie zmiennej środowiskowej CLASSPATH
1.6. Pobieranie przykładów dołączonych do tej książki i korzystanie z nich
1.7. Automatyzacja zależności, kompilacji, testowania i wdrażania
przy użyciu programu Apache Maven
1.8. Automatyzacja zależności, kompilacji, testowania i wdrażania
przy użyciu programu Gradle
1.9. Komunikaty o odrzuconych metodach
1.10. Zapewnianie poprawności kodu za pomocą testów jednostkowych: JUnit
1.11. Zarządzanie kodem z wykorzystaniem ciągłej integracji
1.12. Uzyskiwanie czytelnych komunikatów o wyjątkach
1.13. Poszukiwanie przykładowych kodów źródłowych
1.14. Poszukiwanie gotowych bibliotek Javy
27
28
30
32
36
39
41
49
53
55
57
60
65
66
67
2. Interakcja ze środowiskiem ....................................................................................... 71
2.0. Wprowadzenie
2.1. Pobieranie wartości zmiennych środowiskowych
2.2. Pobieranie informacji z właściwości systemowych
2.3. Stosowanie kodu zależnego od używanej wersji JDK lub systemu operacyjnego
2.4. Stosowanie rozszerzających interfejsów programistycznych lub innych API
2.5. Stosowanie systemu modułów Javy
71
71
72
74
79
80
5
Kup książkę
Poleć książkę
3. Łańcuchy znaków i przetwarzanie tekstów ................................................................ 85
3.0. Wprowadzenie
3.1. Odczytywanie fragmentów łańcucha
3.2. Łączenie łańcuchów znaków przy użyciu klasy StringBuilder
3.3. Przetwarzanie łańcucha znaków po jednej literze
3.4. Wyrównywanie łańcuchów znaków
3.5. Konwersja pomiędzy znakami Unicode a łańcuchami znaków
3.6. Odwracanie kolejności słów lub znaków w łańcuchu
3.7. Rozwijanie i kompresja znaków tabulacji
3.8. Kontrola wielkości liter
3.9. Wprowadzanie znaków niedrukowalnych
3.10. Usuwanie odstępów z końca łańcucha
3.11. Tworzenie komunikatów z użyciem zasobów wielojęzycznych
3.12. Stosowanie konkretnych ustawień lokalnych
3.13. Tworzenie wiązki zasobów
3.14. Program — proste narzędzie do formatowania tekstów
3.15. Program — fonetyczne porównywanie nazwisk
85
88
93
95
97
100
103
104
108
109
111
113
116
117
118
121
4. Dopasowywanie wzorców przy użyciu wyrażeń regularnych ..................................... 125
4.0. Wprowadzenie
4.1. Składnia wyrażeń regularnych
4.2. Wykorzystanie wyrażeń regularnych w języku Java
— sprawdzanie występowania wzorca
4.3. Odnajdywanie tekstu pasującego do wzorca
4.4. Zastępowanie określonego tekstu
4.5. Wyświetlanie wszystkich wystąpień wzorca
4.6. Wyświetlanie wierszy zawierających fragment pasujący do wzorca
4.7. Kontrola wielkości znaków w metodach match() i subst()
4.8. Dopasowywanie znaków z akcentami lub znaków złożonych
4.9. Odnajdywanie znaków nowego wiersza
4.10. Program — analiza dziennika serwera Apache
4.11. Program — pełna wersja programu grep
125
127
134
138
140
143
145
147
148
149
151
153
5. Liczby ..................................................................................................................... 159
5.0. Wprowadzenie
5.1. Sprawdzanie, czy łańcuch znaków stanowi poprawną liczbę
5.2. Konwertowanie liczb na obiekty i na odwrót
5.3. Pobieranie ułamka z liczby całkowitej bez konwertowania go
na postać zmiennoprzecinkową
5.4. Stosowanie liczb zmiennoprzecinkowych
5.5. Formatowanie liczb
159
162
163
164
166
170
6
Spis treści
Poleć książkę
Kup książkę
5.6. Konwersje pomiędzy różnymi systemami liczbowymi
— dwójkowym, ósemkowym, dziesiętnym i szesnastkowym
5.7. Operacje na grupie liczb całkowitych
5.8. Formatowanie z zachowaniem odpowiedniej postaci liczby mnogiej
5.9. Generowanie liczb losowych
5.10. Mnożenie macierzy
5.11. Operacje na liczbach zespolonych
5.12. Obsługa liczb o bardzo dużych wartościach
5.13. Program TempConverter
5.14. Program — generowanie liczbowych palindromów
174
175
177
179
182
184
187
189
191
6. Daty i godziny ..........................................................................................................195
6.0. Wprowadzenie
6.1. Określanie bieżącej daty
6.2. Wyświetlanie daty i czasu w zadanym formacie
6.3. Konwersja liczb określających datę i czas oraz liczbę sekund
6.4. Analiza łańcuchów znaków i ich zamiana na daty
6.5. Obliczanie różnicy pomiędzy dwiema datami
6.6. Dodawanie i odejmowanie dat
6.7. Obsługa zdarzeń cyklicznych
6.8. Obliczanie dat z uwzględnieniem stref czasowych
6.9. Stosowanie starych klas Date i Calendar
195
198
200
202
203
204
206
207
209
210
7. Strukturalizacja danych w języku Java ......................................................................213
7.0. Wprowadzenie
7.1. Strukturalizacja danych przy użyciu tablic
7.2. Modyfikacja wielkości tablic
7.3. Framework kolekcji
7.4. Klasa podobna do tablicy, lecz bardziej dynamiczna
7.5. Stosowanie typów ogólnych we własnych klasach
7.6. Jak przeglądać zawartość kolekcji? Wyliczenie dostępnych sposobów
7.7. Unikanie powtórzeń dzięki zastosowaniu zbioru
7.8. Strukturalizacja danych z wykorzystaniem list połączonych
7.9. Odwzorowywanie z wykorzystaniem klas Hashtable oraz HashMap
7.10. Zapisywanie łańcuchów znaków w obiektach Properties i Preferences
7.11. Sortowanie kolekcji
7.12. Unikanie konieczności sortowania danych
7.13. Odnajdywanie obiektu w kolekcji
7.14. Zamiana kolekcji na tablicę
7.15. Zapewnianie możliwości przeglądania danych przy użyciu iteratora
7.16. Używanie stosu obiektów
213
214
216
217
219
222
226
229
230
235
237
242
246
248
251
252
254
Spis treści
Kup książkę
7
Poleć książkę
Zgłoś jeśli naruszono regulamin