StringBuilder
Niyozbek Mirzayev
C# dasturlash tilida Stringga o'xshash StringBuilder tipi mavjud. Ular bir-biriga yaqin, lekin ma'lum farqlar ularni ajratib turadi.
Keling, StringBuilder qanday yaratilishi haqida bilib olaylik. Avallo, System.Text kutubxonasini chaqirishimiz lozim, shundan so'ng quyidagicha kod yoradamida StringBuilder e'lon qilinadi:
Endi esa asosiy qism, ya'ni String va StringBuilderning farqini ko'rib chiqamiz:
String bu immutable tip hissoblandi, ya'ni uni xotirada e'lon qilganimizdan so'ng uni o'zgartira olmaymiz, StringBuilder esa mutable tip hisoblandi, ya'ni u xotirada o'z ko'rinishni va o'lchamini o'zgartira oladi. Shu sababdan, StringBulider Stringdan tezroqdir.
Misol uchun, Quyidagi kodda str o'zgaruvchisi 1000 martta xotiradan o'chirib tashlanadi va har safar Salom so'zi qo'shilib qaytadan yaratiladi.
Keling end shu misolni StringBuilder orqali ko'raylik:
str o'zgaruvchisida farqli ravishda strB o'zgaruvchisi xotirada 1000 marta o'chirilib tashlanmaydi, buning o'rniga strB o'zgaruvchising o'ziga 1000 martta Salom so'zi qo'shilib yoziladi.
Yuqorida ko'rganingizdek StringBuilderning ham String kabi o'z methodlari mavjut va quyida ulardan bir nechtasiga misolar keltirilgan:
Append - StringBuilderning oxiridan String qo'shish uchun ishlatiladi.
AppendLine - Append funksiyasi kabi ishlaydi, lekin har bir Stringni yangi qatordan qo'shadi:
Remove -satrning ma'lum indexdan boshqa bir indexgacha bo'lgan qismini o'chiradi:
Replace - satrning ma'lum bir qismini boshqa bir satr bilan almashtiradi.
Clear - StringBuilder ichidagi barcha ma'lumotlarni o'chirish uchun ishlatiladi:
Insert - Ma'lum bir berilgan indexdan boshlab String qo'shadi:
Last updated