چگونه بخشی از رشته را جدا کنیم
شاید زمانی نیاز باشد که بخواهیم از رشته ای، بخشی را انتخاب کرده و با آن کار داشته باشیم. برای این کار باید با استفاده از طول رشته ها به آنچه میخواهیم برسیم.
برای مثال فرض کنید ماشین حسابی میخواهیم طراحی کنیم که عدد اول، عملگر و عدد دوم را در textview نمایش دهد و حاصل را بدهد. (54+273)
خب به طور معمول چنین چیزی امکان پذیر نیست. میتوانیم عدد اول را تا زمانی که کاربر بعلاوه را میزند در یک متغیر ذخیره کنیم، اما زمانی که مساوی را کاربر میزند، اگر بخواهیم به همین شیوه عمل کنیم، کل string در متغیر قرار میگیرد. یعنی 273+54.
برای رفع این مشکل به طریق زیر عمل میکنیم:
1- عدد اول را داخل یک متغیر قرار میدهیم
2- کل رشته را درون متغیر دیگری قرار میدهیم
3- عدد دوم رشته های بین عدد اول و انتهای رشته است. با استفاده تابع ( , ) substring و طول رشته ها، عدد دوم را بدست می آوریم.
1) op = "+";
a = (text.getText().toString());
2) x = (text.getText().toString()); //meghdare kole text ro daroone x mizare
3) b = text.getText().toString().substring(a.length()+1, x.length()); //az toole adade aval + amalvand ta entehaye reshte harche dakhele textview bashe migire va dakhele b mizare