Java Geek
Kanalga Telegramβda oβtish
ΠΡΠ°ΠΊΡΠΈΡΠ½ΡΠ΅ ΡΠΎΠ²Π΅ΡΡ, Π»Π°ΠΉΡΡ Π°ΠΊΠΈ ΠΈ ΠΊΠΎΠ΄ Π΄Π»Ρ Java-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΠ°ΠΆΠ΄ΡΠΉ ΠΏΠΎΡΡ β ΡΠ΅Π°Π»ΡΠ½Π°Ρ ΠΏΠΎΠ»ΡΠ·Π°. Π£ΡΠΈΠΌ Java Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ . ΠΠΎ Π²ΡΠ΅ΠΌ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ @evgenycarter
Ko'proq ko'rsatish2 379
Obunachilar
Ma'lumot yo'q24 soatlar
-97 kunlar
-3530 kunlar
Postlar arxiv
2 379
ΠΠ°ΠΉΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ Β«ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΒ». ΠΠ°ΠΊΠΈΠ΅ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈΠΌΠ΅ΡΡ ΠΏΠΎΠ»Ρ ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ²?
ΠΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ interface ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΡ
ΠΊΠ»Π°ΡΡΠΎΠ². ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° - ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ»Π°ΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π΅Π³ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ. Π‘ΠΎΠ·Π΄Π°ΡΠ΅Π»Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΈΠΌΠ΅Π½Π° ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², ΡΠΏΠΈΡΠΊΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΠΈ ΡΠΈΠΏΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, Π½ΠΎ Π½Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΈΡ
ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅. ΠΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ Π½Π΅ΡΠ²Π½ΠΎ ΠΎΠ±ΡΡΠ²Π»ΡΡΡΡΡ ΠΊΠ°ΠΊ public.
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Java 8 Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°Ρ
ΡΠ°Π·ΡΠ΅ΡΠ°Π΅ΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ default ΠΈ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
static ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ².
ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΈ ΠΏΠΎΠ»Ρ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ½ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΌΠΈ public, ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ static ΠΈ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΌΠΈ final.
@java_geek
2 379
ΠΠ°ΠΊΠΈΠ΅ ΡΠΈΠΏΡ ΠΊΠ»Π°ΡΡΠΎΠ² Π±ΡΠ²Π°ΡΡ Π² Java?
βοΈ Top level class (ΠΠ±ΡΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ):
βοΈ Abstract class (ΠΠ±ΡΡΡΠ°ΠΊΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ);
βοΈ Final class (Π€ΠΈΠ½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠ»Π°ΡΡ).
βοΈ Interfaces (ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ).
βοΈ Enum (ΠΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠ΅).
βοΈ Nested class (ΠΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΉ ΠΊΠ»Π°ΡΡ):
βοΈ Static nested class (Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ ΠΊΠ»Π°ΡΡ);
βοΈ Member inner class (ΠΡΠΎΡΡΠΎΠΉ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ ΠΊΠ»Π°ΡΡ);
βοΈ Local inner class (ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ);
βοΈ Anonymous inner class (ΠΠ½ΠΎΠ½ΠΈΠΌΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ).
@java_geek
2 379
ΠΠ΅ΡΠ΅Π²ΠΎΡΠ°ΡΠΈΠ²Π°Π΅ΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° 180 Π³ΡΠ°Π΄ΡΡΠΎΠ²
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° ΠΊΠΎΠ΄Π° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠ΅ΡΠ΅Π²Π΅ΡΠ½ΡΡΠΎΠ΅ Π½Π° 180 Π³ΡΠ°Π΄ΡΡΠΎΠ² ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅.
@java_geek
2 379
Π Π΅Π°Π»ΠΈΠ·ΡΠΉΡΠ΅ ΡΠΈΠΌΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΡΡ ΡΠ°Π·Π½ΠΎΡΡΡ Π΄Π²ΡΡ
ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ Collection (addAll(...), removeAll(...), retainAll(...)).
Π‘ΠΈΠΌΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ°Π·Π½ΠΎΡΡΡ Π΄Π²ΡΡ
ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΉ β ΡΡΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π½Π΅ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΡ
ΠΎΠ±ΠΎΠΈΠΌ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡΠΌ.
@java_geek
2 379
ΠΠ°ΠΊ Π²ΡΠ·ΡΠ²Π°ΡΡ default ΠΌΠ΅ΡΠΎΠ΄ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π² ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠ΅ΠΌ ΡΡΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΊΠ»Π°ΡΡΠ΅?
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ super Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°.
@java_geek
2 379
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ checked ΠΈ unchecked exception?
Π Java Π²ΡΠ΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π΅Π»ΡΡΡΡ Π½Π° Π΄Π²Π° ΡΠΈΠΏΠ°:
β’ checked (ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΠΌΡΠ΅/ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌΡΠ΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ) Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Π±Π»ΠΎΠΊΠΎΠΌ catch ΠΈΠ»ΠΈ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, throws IOException). ΠΠ°Π»ΠΈΡΠΈΠ΅ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°/ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ Π½Π° ΡΡΠ°ΠΏΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ;
β’ unchecked (Π½Π΅ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΠΌΡΠ΅/Π½Π΅ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌΡΠ΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ), ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ ΠΎΡΠ½ΠΎΡΡΡΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ Error (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, OutOfMemoryError), ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ ΠΊΠ»Π°ΡΡΠΎΠΌ RuntimeException ΠΈ Π΅Π³ΠΎ Π½Π°ΡΠ»Π΅Π΄Π½ΠΈΠΊΠ°ΠΌΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, NullPointerException), ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π½Π΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Π±Π»ΠΎΠΊΠΎΠΌ catch ΠΈ Π½Π΅ Π±ΡΡΡ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠΌΠΈ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π°.
@java_geek
2 379
Collections.min/max
Π£Π΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΡΠ΅ΡΠΈΡΡ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π²ΡΡΡΠ½ΡΡ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Ρ
ΠΎΠ΄ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ»ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠ΅Π³ΠΎ-ΡΠΎ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΌΡ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΊΡΠΈΡΠ΅ΡΠΈΡ.
ΠΠ°Π·Π°Π»ΠΎΡΡ Π±Ρ, ΡΠ°ΠΊΠ°Ρ ΡΡΠΈΠ²ΠΈΠ°Π»ΡΠ½Π°Ρ Π·Π°Π΄Π°ΡΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ Π΄Π°Π²Π½ΠΎ ΡΠ΅ΡΠ΅Π½Π°. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΎΠ½Π° ΠΈ ΡΠ°ΠΊ Π΄Π°Π²Π½ΠΎ ΡΠ΅ΡΠ΅Π½Π°: Π΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ Collections.min ΠΈ Collections.max. Π Π°Π½ΡΡΠ΅ Π±ΡΠ»ΠΎ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠΌΠΏΠ°ΡΠ°ΡΠΎΡΡ, Π½ΠΎ Π² Java-8 Π²ΡΡ ΡΡΠ°Π»ΠΎ Π»Π΅Π³ΡΠ΅.
Π ΠΏΡΠΈΠΌΠ΅ΡΡ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΊΠ»ΡΡ Π² Map, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΠΊΠΎΠ΄ΠΎΠΌ Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ.
@java_geek
2 379
ΠΡΠ±ΡΠ°ΡΡΠΉ ΠΌΠ°ΡΡΠΈΠ² Π² Java
ΠΡΠ±ΡΠ°ΡΡΠΉ ΠΌΠ°ΡΡΠΈΠ² (BitSet) β ΡΡΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ
Π΄Π»Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ³ΠΎ Ρ
ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π°Π±ΠΎΡΠ°ΠΌΠΈ Π±ΠΈΡΠΎΠ².
ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ² Π±ΠΈΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΠ°Π½ΠΈΠΌΠ°Π΅Ρ ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠ΅ΠΌ ΠΎΠ±ΡΡΠ½ΡΠ΅ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ
Π΄Π»Ρ Ρ
ΡΠ°Π½Π΅Π½ΠΈΡ Π±ΡΠ»Π΅Π²ΡΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ.
ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π°Π΄ Π±ΠΈΡΠ°ΠΌΠΈ: ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ°, ΡΠ±ΡΠΎΡ, ΠΈΠ½Π²Π΅ΡΡΠΈΡ, Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
ΠΡΠ±ΡΠ°ΡΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΠΏΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ: ΠΏΠΎΠΈΡΠΊ Π² ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π°Ρ
, Ρ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ ΠΈ ΡΠ»Π°Π³ΠΎΠ², ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΡΠ°ΡΡ
ΠΎΠ΄Π° ΠΏΠ°ΠΌΡΡΠΈ ΠΈ Π² ΡΠ΅Π»ΠΎΠΌ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ Ρ
ΡΠ°Π½ΠΈΡΡ ΠΈ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π±ΡΠ»Π΅Π²ΡΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ.
@java_geek
2 379
ForkJoinPool
ΠΡΠΎ ΠΊΠ»Π°ΡΡ, Π²Π²Π΅Π΄Π΅Π½Π½ΡΠΉ Π² JDK 7, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΡΠ» ΠΏΠΎΡΠΎΠΊΠΎΠ², ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ Π΄Π»Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΡ
Π·Π°Π΄Π°Ρ.
ForkJoinPool Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΎΡΠΎΠΊΠΎΠ² Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ΅ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ.
ΠΡΠΈΠ½ΡΠΈΠΏ ΡΠ°Π±ΠΎΡΡ ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π±ΠΎΠ»ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΠ΅ ΠΏΠΎΠ΄Π·Π°Π΄Π°ΡΠΈ ΠΈ ΠΈΡ
ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΈ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°. ΠΠ°ΠΆΠ΄Π°Ρ ΠΏΠΎΠ΄Π·Π°Π΄Π°ΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π° Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π°, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°.
@java_geek
2 379
ΠΠ°ΠΊΠΈΠ΅ Π΅ΡΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΊΠ»Π°ΡΡΠ° String?
ΠΡΠΎ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ (immutable) ΠΈ ΡΠΈΠ½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ
;
ΠΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΊΠ»Π°ΡΡΠ° String JVM Ρ
ΡΠ°Π½ΠΈΡ Π² ΠΏΡΠ»Π΅ ΡΡΡΠΎΠΊ;
ΠΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° String ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄Π²ΠΎΠΉΠ½ΡΠ΅ ΠΊΠ°Π²ΡΡΠΊΠΈ;
ΠΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ + Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½Π°ΡΠΈΠΈ ΡΡΡΠΎΠΊ;
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Java 7 ΡΡΡΠΎΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ switch.
@java_geek
2 379
ΠΠ΅ΡΠΎΠ΄ Iterable.forEach
ΠΠ΅ΡΠ΅Π±ΠΈΡΠ°Π΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΡΡ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ, ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π»ΡΠΌΠ±Π΄Π°-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ action Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΅Π΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°.
@java_geek
2 379
ΠΠ°ΠΊ ΡΡΡΡΠΎΠ΅Π½ HashMap?
HashMap ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Β«ΠΊΠΎΡΠ·ΠΈΠ½Β» (bucket). Π‘ ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ Β«ΠΊΠΎΡΠ·ΠΈΠ½ΡΒ» β ΡΡΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ
ΡΠ°Π½ΡΡ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΠΏΠΈΡΠΊΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠΉ ΠΏΠ°ΡΡ Β«ΠΊΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅Β», Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ Ρ
ΡΡ-ΠΊΠΎΠ΄ ΠΊΠ»ΡΡΠ°, Π½Π° ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ Π½ΠΎΠΌΠ΅Ρ ΠΊΠΎΡΠ·ΠΈΠ½Ρ (Π½ΠΎΠΌΠ΅Ρ ΡΡΠ΅ΠΉΠΊΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°), Π² ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠΏΠ°Π΄Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ.
ΠΡΠ»ΠΈ ΠΊΠΎΡΠ·ΠΈΠ½Π° ΠΏΡΡΡΠ°Ρ, ΡΠΎ Π² Π½Π΅Π΅ ΡΠΎΡ
ΡΠ°Π½ΡΠ΅ΡΡΡ ΡΡΡΠ»ΠΊΠ° Π½Π° Π²Π½ΠΎΠ²Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ, Π΅ΡΠ»ΠΈ ΠΆΠ΅ ΡΠ°ΠΌ ΡΠΆΠ΅ Π΅ΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ, ΡΠΎ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ°ΠΌ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π² ΡΠ΅ΠΏΠΎΡΠΊΠ΅, Π² ΠΏΠΎΠΈΡΠΊΠ°Ρ
ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, ΠΎΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΈ ΡΡΠ°Π²ΠΈΡΡΡ ΡΡΡΠ»ΠΊΠ° Π½Π° Π²Π½ΠΎΠ²Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ. ΠΡΠ»ΠΈ Π² ΡΠΏΠΈΡΠΊΠ΅ Π±ΡΠ» Π½Π°ΠΉΠ΄Π΅Π½ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Ρ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΊΠ»ΡΡΠΎΠΌ, ΡΠΎ ΠΎΠ½ Π·Π°ΠΌΠ΅Π½ΡΠ΅ΡΡΡ.
@java_geek
2 379
Lombok β Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, Π³Π΅Π½Π΅ΡΠΈΡΡΡΡΠ°Ρ Π·Π° Π²Π°Ρ Π±ΠΎΠΉΠ»Π΅ΡΠΏΠ»Π΅ΠΉΡ (ΡΠ°Π±Π»ΠΎΠ½Π½ΡΠΉ) ΠΊΠΎΠ΄. ΠΠ°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΠ»Π°ΡΡΡ ΡΡΠΊΠΎΡΠ΅Π½Π½ΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π½Π΅ Π½Π°Π΄ΠΎ Π²ΡΡΡΠ½ΡΡ ΠΏΡΠΎΠΏΠΈΡΡΠ²Π°ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π³Π΅ΡΡΠ΅ΡΡ ΠΈ ΡΠ΅ΡΡΠ΅ΡΡ, Π²ΡΡ Π΄Π΅Π»Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π°Π½Π½ΠΎΡΠ°ΡΠΈΠΉ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ ΠΊΠ»Π°ΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠΈΠΏΠΎΠ²ΡΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ ΠΈ Π³Π΅ΡΡΠ΅ΡΠ°ΠΌΠΈ ΠΊ Π½ΠΈΠΌ β Ρ ΠΏΠΎΠΌΠΎΡΡΡ
@Value. ΠΡΠ΅ ΠΏΠΎΠ»Ρ ΠΊΠ»Π°ΡΡΠ° Π±ΡΠ΄ΡΡ ΡΠΈΠ½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ ΠΈ ΡΠ΄Π΅Π»Π°Π½Ρ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠΌΠΈ.
ΠΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ: https://projectlombok.org/
@java_geek2 379
ΠΠΏΠΈΡΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΡ Π±Π»ΠΎΠΊΠ° try-catch-finally
try β ΡΡΠΎ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΡΠΌΠ΅ΡΠΊΠΈ Π½Π°ΡΠ°Π»Π° Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ΄Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΡ. catch β ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ Π΄Π»Ρ ΠΎΡΠΌΠ΅ΡΠΊΠΈ Π½Π°ΡΠ°Π»Π° Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Ρ
Π²Π°ΡΠ° ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ Π² ΡΠ»ΡΡΠ°Π΅ ΠΈΡ
Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ. finally β ΡΠ»ΠΎΠ²ΠΎ Π΄Π»Ρ ΠΎΡΠΌΠ΅ΡΠΊΠΈ Π½Π°ΡΠ°Π»Π° Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΡΠΎΡ Π±Π»ΠΎΠΊ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π±Π»ΠΎΠΊΠ° catch. Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π² Π±Π»ΠΎΠΊ finally Π²Π½Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ, Π±ΡΠ»ΠΎ Π²ΡΠ±ΡΠΎΡΠ΅Π½ΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π½Π΅Ρ.
ΠΠ±ΡΠΈΠΉ Π²ΠΈΠ΄ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅.
@java_geek
2 379
ΠΠ»Π°ΡΡ FileReader
FileReader β ΡΡΠΎ ΠΊΠ»Π°ΡΡ Π² ΠΏΠ°ΠΊΠ΅ΡΠ΅ java .io, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΡΠΎΠΊΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈΠ· ΡΠ°ΠΉΠ»ΠΎΠ². ΠΡΠΎΡ ΠΊΠ»Π°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π»ΠΈΠ±ΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΡ, Π»ΠΈΠ±ΠΎ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±Π°ΠΉΡΠΎΠ² Π² ΡΠΈΠΌΠ²ΠΎΠ»Ρ.
Π Π°Π·Π±Π΅ΡΡΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊΠ»Π°ΡΡΠ°:
read() β ΠΌΠ΅ΡΠΎΠ΄ ΡΠΈΡΠ°Π΅Ρ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΡΠΈΠΌΠ²ΠΎΠ» ΠΈΠ»ΠΈ -1, Π΅ΡΠ»ΠΈ ΠΏΠΎΡΠΎΠΊ Π·Π°Π²Π΅ΡΡΠ΅Π½;
read(char [] charBuffer, int offset, int length) β ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΠΏΠΎΡΠΎΠΊ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈ ΡΠΎΡ
ΡΠ°Π½ΡΠ΅Ρ ΠΈΡ
Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΌ Π±ΡΡΠ΅ΡΠ΅. offset - ΡΡΠΎ ΠΏΠΎΠ·ΠΈΡΠΈΡ, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ ΡΡΠ΅Π½ΠΈΠ΅, Π° length - ΡΡΠΎ ΠΎΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ. ΠΠ½ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΡΠΈΡΠ°Π½Π½ΡΡ
ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π»ΠΈΠ±ΠΎ -1, Π΅ΡΠ»ΠΈ ΠΏΠΎΡΠΎΠΊ Π·Π°Π²Π΅ΡΡΠ΅Π½;
ready() β ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ, Π³ΠΎΡΠΎΠ² Π»ΠΈ ΠΏΠΎΡΠΎΠΊ ΠΊ ΡΡΠ΅Π½ΠΈΡ. Π‘ΡΠΈΡΠ°Π΅ΡΡΡ, ΡΡΠΎ ΠΏΠΎΡΠΎΠΊ Π³ΠΎΡΠΎΠ², Π΅ΡΠ»ΠΈ Π΅Π³ΠΎ Π²Ρ
ΠΎΠ΄Π½ΠΎΠΉ Π±ΡΡΠ΅Ρ Π½Π΅ ΠΏΡΡΡ;
getEncoding() β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎΡΠΎΠΊΠΎΠΌ;
close() β Π·Π°ΠΊΡΡΠ²Π°Π΅Ρ ΠΏΠΎΡΠΎΠΊ ΠΈ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅Ρ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π½ΠΈΠΌ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ.
@java_geek
2 379
ΠΠ»Π°ΡΡ FileReader
FileReader β ΡΡΠΎ ΠΊΠ»Π°ΡΡ Π² ΠΏΠ°ΠΊΠ΅ΡΠ΅ java .io, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΡΠΎΠΊΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈΠ· ΡΠ°ΠΉΠ»ΠΎΠ². ΠΡΠΎΡ ΠΊΠ»Π°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π»ΠΈΠ±ΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΡ, Π»ΠΈΠ±ΠΎ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±Π°ΠΉΡΠΎΠ² Π² ΡΠΈΠΌΠ²ΠΎΠ»Ρ.
Π Π°Π·Π±Π΅ΡΡΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊΠ»Π°ΡΡΠ°:
read() β ΠΌΠ΅ΡΠΎΠ΄ ΡΠΈΡΠ°Π΅Ρ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΡΠΈΠΌΠ²ΠΎΠ» ΠΈΠ»ΠΈ -1, Π΅ΡΠ»ΠΈ ΠΏΠΎΡΠΎΠΊ Π·Π°Π²Π΅ΡΡΠ΅Π½;
read(char [] charBuffer, int offset, int length) β ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΠΏΠΎΡΠΎΠΊ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈ ΡΠΎΡ
ΡΠ°Π½ΡΠ΅Ρ ΠΈΡ
Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΌ Π±ΡΡΠ΅ΡΠ΅. offset - ΡΡΠΎ ΠΏΠΎΠ·ΠΈΡΠΈΡ, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ ΡΡΠ΅Π½ΠΈΠ΅, Π° length - ΡΡΠΎ ΠΎΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ. ΠΠ½ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΡΠΈΡΠ°Π½Π½ΡΡ
ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π»ΠΈΠ±ΠΎ -1, Π΅ΡΠ»ΠΈ ΠΏΠΎΡΠΎΠΊ Π·Π°Π²Π΅ΡΡΠ΅Π½;
ready() β ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ, Π³ΠΎΡΠΎΠ² Π»ΠΈ ΠΏΠΎΡΠΎΠΊ ΠΊ ΡΡΠ΅Π½ΠΈΡ. Π‘ΡΠΈΡΠ°Π΅ΡΡΡ, ΡΡΠΎ ΠΏΠΎΡΠΎΠΊ Π³ΠΎΡΠΎΠ², Π΅ΡΠ»ΠΈ Π΅Π³ΠΎ Π²Ρ
ΠΎΠ΄Π½ΠΎΠΉ Π±ΡΡΠ΅Ρ Π½Π΅ ΠΏΡΡΡ;
getEncoding() β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎΡΠΎΠΊΠΎΠΌ;
close() β Π·Π°ΠΊΡΡΠ²Π°Π΅Ρ ΠΏΠΎΡΠΎΠΊ ΠΈ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅Ρ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π½ΠΈΠΌ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ.
@java_geek
2 379
ΠΠ΄Π΅ ΠΈ ΠΊΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ?
ΠΡΠΈΠ²Π°ΡΠ½ΡΠΉ (ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Π½ΡΠΉ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ»ΠΎΠ²ΠΎΠΌ private, ΡΠΊΡΡΡΡΠΉ) ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΌ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°. Π’Π°ΠΊΠΆΠ΅ Π΄ΠΎΡΡΡΠΏ ΠΊ Π½Π΅ΠΌΡ ΡΠ°Π·ΡΠ΅ΡΡΠ½ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΌ ΠΊΠ»Π°ΡΡΠ°ΠΌ ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΈΡ
Π½ΡΠΆΠ΄.
@java_geek
2 379
Map.putIfAbsent
Π Π°Π½ΡΡΠ΅ ΡΡΠΎΠ±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΠ°ΡΡ Π² Map, Π΅ΡΠ»ΠΈ Π΅Π΅ ΡΠ°ΠΌ Π½Π΅Ρ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π±ΡΠ»ΠΎ Π΄Π΅Π»Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅(ΡΠΌ 1 ΡΠ°ΡΡΡ Π½Π° ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅).
Π’Π΅ΠΏΠ΅ΡΡ Π²ΡΠ΅ ΡΡΠ°Π»ΠΎ ΠΊΡΠ΄Π° ΠΏΡΠΎΡΠ΅(ΡΠΌ 2 ΡΠ°ΡΡΡ Π½Π° ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅).
@java_geek
2 379
Collection.removeIf
ΠΠ΅ΡΠΎΠ΄ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°Π΅Ρ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ, ΠΈ ΡΠ΄Π°Π»ΡΠ΅Ρ ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ filter.
Π Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ Π² ΠΎΠ΄Π½Ρ ΡΡΡΠΎΠΊΡ ΡΠ΄Π°Π»ΡΠ΅ΠΌ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° Π²ΡΠ΅ ΡΠΈΡΠ»Π° Π±ΠΎΠ»ΡΡΠ΅ 5.
@java_geek
2 379
ΠΠ΄Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½Π° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
/Π½Π΅ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΏΠΎΠ»Π΅ΠΉ?
β’ Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠΎΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠΈ, Π² ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΠΈΠ»ΠΈ Π½Π΅ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌ Π±Π»ΠΎΠΊΠ΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
β’ ΠΠ΅ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠΎΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠΈ, Π² Π½Π΅ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌ Π±Π»ΠΎΠΊΠ΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ»ΠΈ Π² ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ΅.
@java_geek
