Reja: Kirish. Belgilar asoslari va Stringlarlar


Download 36.9 Kb.
bet5/8
Sana24.12.2022
Hajmi36.9 Kb.
#1062398
1   2   3   4   5   6   7   8
Bog'liq
Dasturlash Referat

Class StringBuilder
Endi biz StringBuilder klassining dinamik satr ma'lumotlarini, ya'ni o'zgartirilishi mumkin bo'lgan satrlarni yaratish va boshqarish uchun xususiyatlarini muhokama qilamiz . Har bir StringBuilder o'z sig'imi bo'yicha belgilangan bir qator belgilarni saqlashga qodir. Agar StringBuilder sig'imi oshib ketgan bo'lsa, sig'im qo'shimcha belgilarni joylashtirish uchun kengayadi.
Java String obyektlari (masalan, bir nechta o'zgaruvchilardan bitta String ob'ektiga murojaat qilish) bilan ma'lum optimallashtirishlarni amalga oshirishi mumkin , chunki u bu obyektlar o'zgarmasligini biladi. Ma'lumotlar o'zgarmasa, strings ( StringBuilders emas) ishlatilishi kerak. Tez-tez satrlarni birlashtirish yoki boshqa satr o'zgartirishlarni amalga oshiradigan dasturlarda StringBuilder sinfida o'zgartirishlarni amalga oshirish ko'pincha samaraliroq bo'ladi. StringBuilders ipsi xavfsiz emas. Agar bir nechta iplar bir xil dinamik satr ma'lumotlariga kirishni talab qilsa , kodingizda StringBuffer sinfidan foydalaning. StringBuilder va StringBuffer sinflari bir xil imkoniyatlarni
ta'minlaydi, ammo StringBuffer sinfi ipsi xavfsizdir.
StringBuilder konstruktorlari
StringBuilder to'rtta konstruktorni taqdim etadi. Birinchisi argumentsiz StringBuilder konstruktoridan foydalanib , unda belgilarsiz va boshlang‘ich sig‘imi ( StringBuilder uchun sukut bo‘yicha) String Builder yaratish uchun ishlatiladi. Ikkinchisi belgilarsiz va butun son argumenti bilan belgilangan boshlang‘ich sig‘imi bo‘lmagan StringBuilder yaratish uchun butun son argumentini oladigan StringBuilder konstruktoridan foydalaniladi. Uchinchisi String argumentidagi belgilarni o'z ichiga olgan StringBuilder yaratish uchun String argumentini oladigan StringBuilder konstruktoridan foydalanadi. Dastlabki sig'im - bu String argumentidagi belgilar soniga teng. StringBuilders -ni printf usuli bilan chiqarish uchun StringBuilder sinfining toString usulini bilvosita ishlatadi . Biz Java satrlarni birlashtirish uchun + va += operatorlarini amalga oshirish uchun StringBuilder obyektlaridan qanday foydalanishini muhokama qilamiz.
StringBuilder usullari uzunligi, sig'imi, setLength va provideCapacity klassi StringBuilder mos ravishda StringBuilderda mavjud belgilar sonini va StringBuilderda saqlanishi mumkin bo'lgan belgilar sonini mos ravishda ko'proq xotira ajratmasdan qaytarish uchun usullar uzunligi va imkoniyatlarini taqdim etadi. Imkoniyatlarni ta'minlash usuli StringBuilder kamida belgilangan imkoniyatlarga ega ekanligini kafolatlaydi.setLength StringBuilder uzunligini oshiradi yoki kamaytiradi.
Eslatma: StringBuilder quvvatini dinamik ravishda oshirish nisbatan uzoq vaqt talab qilishi mumkin.Ushbu operatsiyalarning ko'p qismini bajarish dasturning ishlashini pasaytirishi mumkin. Agar StringBuilder hajmi sezilarli darajada, ehtimol bir necha marta kattalashmoqchi bo'lsa, uning hajmini boshida yuqori darajaga qo'yish unumdorlikni oshiradi.
Klass StringBuilder charAt, setCharAt, getChars va teskari StringBuilderdagi belgilarni boshqarish usullarini taqdim etadi . charAt usuli butun son argumentini oladi va ushbu indeksdagi StringBuilderdagi belgini qaytaradi.
getChars usuli StringBuilderdan belgilarni argument sifatida berilgan belgilar qatoriga nusxalaydi. Ushbu usul to'rtta argumentni oladi - belgilar StringBuilderda ko'chirilishi kerak bo'lgan boshlang'ich indeks, StringBuilder dan nusxalanadigan oxirgi belgidan keyingi indeks, belgilar ko'chirilishi kerak bo'lgan belgilar qatori va boshlang'ich joylashuvi. birinchi belgi joylashtirilishi kerak bo'lgan belgilar qatori. setCharAt usuli butun son va belgilar argumentini oladi va belgini StringBuilderda belgili argumentga belgilangan pozitsiyaga o'rnatadi . Teskari usul StringBuilder tarkibini o'zgartiradi .
Eslatma: StringBuilder chegarasidan tashqarida bo‘lgan belgiga kirishga urinish (ya’ni, indeks 0 dan kichik yoki StringBuilder uzunligiga teng yoki undan katta ) StringIndexOutOfBoundsExceptiondan foydalaniladi.

Download 36.9 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling