آموزش StringBuilder در برنامه نویسی اندروید

سلام دوستان در این سری از آموزش برنامه نویسی اندروید به آموزش StringBuilder در برنامه نویسی اندروید می پردازیم در ادامه با ما همراه باشید. stringbuilder یک نوع object از string است که قابل ویرایش است و همانند یک آرایه از اجزا می باشد در ادامه با ما همراه باشید.
چرا باید از StringBuilder استفاده کنیم ؟
به کد زیر نگاه کنید.

در بالا از یک حلقه for برای قرار دادن عدد 0 تا 99 استفاده کرده ایم این کار در صورتی که بزرگ باشد سبب Memory Leak می شود (قبلا Memory Leak را توضیح داده ایم در سایت جستجو کنید)
برای اینکه از این کار جلوگیری کنیم باید از StringBuilder استفاده کنیم.
دلیل دوم که از StringBuilder استفاده می شود سرعت فوق العاده بالای آن در انجام کار هاست به طور مثال شما اگر بخواهید یک حقله داشته باشید که بخواهد یک میلیون بار اجرا شود اولین اینکه به خطا می خورید و در صورتی که به خطا نخوردید این عملیات شاید ساعت ها طول بکشد اما اگر این کار را با StringBuilder انجام دهید شاید در کسری از دقیقه به اتمام برسد البته به گوشی و پردازنده آن هم بستگی دارد.
و یک چیز جالب هم بگویم در صورتی که از کد زیر استفاده کنید.

یعنی خودتان هر segment را تعریف کنید compiler جاوا از StringBuilder استفاده خواهد کرد.
برای ایجاد یک String Builder باید همانند زیر عمل کنید.

در بالا یک Stringbuilder ساخته شده که 16 خانه ظرفیت دارد اگر در مقدار Stringbuilder چیزی قرار ندهیم به صورت پیشفرض برابر با 16 خواهد بود برای اینکه مقدار آن را تغییر دهیم باید مثل زیر عمل کنیم.

در بالا ما یک StringBuilder داریم که 25 خانه ظرفیت دارد.
برای اضافه کردن مقدار در StringBuilder از append استفاده می شود همانند زیر

انجام عملیات درج در StringBuilder

در بالا درج اولی یعنی این که در index که برابر با 0 باشه مقدار wow را قرار بده بهترین کارت انجام تست است تا بهتر متوجه شوید.
به دست آودن طول StringBuilder

در بالا طول کارکتر هایی که در StringBuilder هست در متغیر ذخیره می شود.
به دست آوردن ظرفیت StringBuilder

مقدار ظرفیت یعنی مقدار خانه هایی که در StringBuilder تعریف شده که در بالا برابر با 15 است.
در پایین تر به یک مثال کاربردی تر می پردازیم.
در پایین یک مسری به filename بدهید در پایین می خواهیم یک فایل txt  را از مسیری بخونیم و با استفاده از کد زیر تغییراتی در آن ایجاد کنیم بعد از خواندن هر خط در خط بعدی یک @ اضافه می شود و به خاطر اینکه از خطای memory Leak جلوگیری کنیم باید از try و catch استفاده کنیم قبلا به صورت مفصل توضیح داده بودیم می توانید در سایت جستجو کنید. پس در پایین از BufferREeader برای خواندن فایل استفاده کردیم

 
 
این آموزش هم به پایان رسید.
 
موفق و موید باشید.
 
 
 

مطالعه بیشتر