1. String klassining tuzilishi
Bugun biz String klassi haqida gaplashamiz. String klassi — Java'da int turidan keyin eng mashhur klass. U har joyda ishlatiladi. Uning bir talay foydali metodlari bor, ular haqida bilgan ma'qul, bilmagan yomon.
String klassi — switch ichida ishlatish mumkin bo‘lgan, primitiv turlaridan tashqari yagona kelas; kompilyator satr va obyektlarni qo‘shishni o‘ziga xos tarzda ishlov beradi; String obyekti xotirada o‘ziga xos tarzda saqlanadi. Umuman olganda, String klassi juda o‘zgacha klass.
Shuningdek, String klassida yana bir talay sputnik-klasslar mavjud, ularning maqsadi — Java'da satrlar bilan ishni yanada osonlashtirish. Agar siz bularning hammasini o‘rganib chiqsangiz, sizga ko‘p narsalar ancha oson bo‘ladi. Biz esa bu ekosistemani eng markaziy joyidan — String klassining tuzilishidan boshlaymiz.
Belgilar massivi
Aslida String klassi juda oddiy tarzda tuzilgan: uning ichida belgilar (char) massivi joylashgan, ularning hammasi satrdagi belgilarni saqlaydi. Masalan, «Salom» so‘zi shunday saqlanadi:
Aslida hammasi biroz boshqacha. String klassi juda muhim bo‘lgani uchun, unda ko‘plab optimizatsiyalar qo‘llaniladi va ma'lumotlar belgi massivi shaklida emas, balki byte massivi shaklida saqlanadi.
2. String klassining metodlari
String klassida juda ko‘p metodlar mavjud: konstruktorlardan yarmi 18 ta! Shuning uchun quyida faqat eng asosiylarini keltiramiz:
| Metodlar | Ta'rif |
|---|---|
|
Satrdagi belgilar sonini qaytaradi |
|
Satr bo‘sh ekani tekshiradi |
|
Satrdagi faqat whitespace-belgilar: bo‘sh joy, tab, enter va h.k. tekshiradi |
|
Satrda index-pozitsiyada joylashgan belgini qaytaradi. |
|
Satrni tashkil etuvchi belgilar (nusxa) massivi qaytaradi |
|
Satrni byte to‘plamiga aylantiradi va byte massivini qaytaradi. |
|
Satrni bir nechta substringlarga ajratadi. |
|
Bir nechta substringlarni birgalikda yopishtiradi |
|
Satrni StringPoolga joylashtiradi. |
Konstruktorlar haqida ko‘proq ma'lumotni Konstruktor nima uchun kerak? maqolasidan bilib olishingiz mumkin.
Keling, Unix Style'dagi fayl yo‘lini Windows Style'ga o‘zgartiradigan dastur yozamiz. Unix direktoriyalar ajratgichi sifatida / belgisini, Windows esa \ belgisini ishlatadi.
Yeilim 1 — char massivdan foydalanish
| Kod | Izohlar |
|---|---|
|
Scanner obyekti yaratish Konsoldan satr o‘qish Satrdan belgilar massivi yaratish Belgilar orqali tsikl Agar belgi / ga teng bo‘lsa,uni \ ga almashtirish. Ekranlashni unutmaymiz.Belgilar massivi asosida yangi satr yaratish. Satrni ekranga chiqarish. |
Yeilim 2 — split() va join() metodlaridan foydalanish:
| Kod | Izohlar |
|---|---|
|
Scanner obyekti yaratish Konsoldan satr o‘qish Satrdan satrlar massivi yaratish. Ajratgich sifatida / belgisi ishlatiladi (qo‘shimcha ikkita slashes — bu ikki marta ekranlash natijasi).satrlar massividagi barcha satrlarni birlashtirish, ajratgich sifatida \ belgisi ishlatiladi (biz uni ekranlangan holda ko‘ramiz).Satrni ekranga chiqarish. |
Yeilim 3 — replace(char oldChar, char newChar) metodidan foydalanish:
| Kod | Izohlar |
|---|---|
|
Scanner obyekti yaratish Konsoldan satr o‘qish Shunchaki bir belgi o‘rniga boshqasini almashtirish (ikkinchisi ekranlangan) Satrni ekranga chiqarish. |
GO TO FULL VERSION