به نام خدا
تقدیم به هموطنان عزیزم
جاوا را با لذت یاد بگیر!
آموزش زبان برنامه نویسی جاوا
نمونه مثال از کلاس String
متد ()last index Of
نویسنده : رحمان زارعی
جاوا را ساده،آسان و شیرین بنوشید!!!
سلام. در آموزش قبل مامتد () index Ofرا بررسی کردیم. در این جلسه آموزشی جاوا قصد داریم در مورد کاربرد متد ()last index Of با هم یک بحث کوتاهی داشته باشیم. 😊
کاربرد متد()last index Of چیست؟ برای پیدا کردن ایندکس آخرین کاراکتر یا زیر رشته (sub-string) موجود در یک String از این متد استفاده میکنیم.متد ()last index Of با پارامترهای مختلف |
int last index Of(int ch) |
ایندکس آخرین کاراکتر ch موجود در یک String مشخص را برمی گرداند. منظور از آخرین کاراکتر ch این است که اگر در یک رشته بیش از یک عدد کاراکتر ch داشتیم، متد last index Of ایندکس آخرین کاراکتر ch موجود در رشته را برای ما برمی گرداند.
Example:
package java like ;
public class Test5 {
public static void main(String[] args) {
String str = "java like ";
System.out. print ln(str.last index Of('a'));
} } |
خروجی(output):
• در برنامه بالا، با وجود این که در رشته "java like " دو کاراکتر 'a' یکی با ایندکس 1 و دیگری با ایندکس 3 داشتیم، متد last index Of ایندکس آخرین کاراکتر 'a' را به ما پس داد.
متد بعدی.......int last index Of(int ch, int from index ): |
• از نقطه ایندکس from index رشته(String) مورد نظر به سمت عقب شروع به پیدا کردن آخرین کاراکتر ch موجود در رشته(String) مورد نظر میکند. میدوم مفهومش هنوز واضع نیست! با مثال کاربرد متد بالا رو توضیح میدم.
مثلا فرض کنید یک رشته با نام str به صورت زیر داریم:String str = "java like ";
• حال متد last index Of را به صورت زیر برای رشته str صدا میزنیم:str.last index Of('k', 6)
• در دستور بالا، پارامتر from index =6 و پارامتر 'ch='k است. حالا این دو پارامتر داده شده به متد last index Of به چه معناست؟ دستور str.last index Of('k', 6) میگه که از نقطه ایندکس ششم رشته str به سمت عقب شروع به پیدا کردن آخرین ایندکس کاراکتر 'k' درون رشته str کن. • با توجه به دستور str.last index Of('k', 6) و شکل(1)، متد last index Of از ایندکس 6ام شروع به جست و جو برای پیدا کردن آخرین ایندکس کاراکتر 'k' موجود در رشته str میکند.اگر در ایندکس ششم این کاراکتر وجود نداشت، به سمت عقب حرکت میکند یعنی میره سراغ ایندکس پنجم رشته str، اگر کاراکتر 'k' در ایندکس 5 ام وجود داشته باشد مقدار ایندکس 5 ام رو برمی گرداند در غیر این صورت به سراغ ایندکس 4 و... میرود و در صورت وجود نداشتن در ایندکس های 4 و 3 و 2 و1 میره سراغ ایندکس صفرم رشته str و اگر کاراکتر 'k' در ایندکس صفرم رشته str وجود داشت، ایندکس صفر را برمی گرداند و در غیر این صورت مقدار -1 که به معنای پیدا نشدن کاراکتر 'k' هست را برای ما برمی گرداند.
Example:
package java like ;
public class Test5 {
public static void main(String[] args) {
String str = "java like ";
System.out. print ln(str.last index Of('k', 6));
}
} |
خروجی(output):
به دلیل این که کاراکتر 'k' از بازه 6 تا 0 رشته str پیدا نشده است، متد last index Of مقدار -1 را به ما پس داده است.
Example: package java like ;
public class Test5 {
public static void main(String[] args) {
String str = "java like ";
System.out. print ln(str.last index Of('a', 6));
}
}
|
• متد last index Of از بازه 6 به صورت عقبگرد شروع به پیدا کردن ایندکس آخرین کاراکتر 'a' موجود در رشته str کرده است. منظور از عقبگرد این است که ابتدا ایندکس 6 رشته str رو بررسی کرده ودر صورت عدم وجود کاراکتر 'a' در ایندکس 6 رشته str، ایندکس 5 رشته str رو بررسی کرده و در صورت عدم وجود کاراکتر 'a' در ایندکس 5 رشته str ،ایندکس 4 رشته str رو بررسی کرده و در صورت عدم وجود کاراکتر 'a' در ایندکس 4 رشته str، ایندکس 3 رشته str را چک کرده و به دلیل وجود داشتن کاراکتر 'a' در ایندکس 3 رشته str، مقدار ایندکس 3 را به عنوان خروجی به ما پس داده است.
متد بعدی.......
int last index Of(String str): |
• این متد ایندکس آخرین رشته str موجود در یک String را برمی گرداند.
Example:
package java like ;
public class Test5 {
public static void main(String[] args) {
String str = "java like java";
System.out. print ln(str.last index Of("java"));
}
} |
خروجی(output):
توضیحات:
String str = "java like java"; |
• یک String ایجاد کرده که در درون خود دو رشته "java" دارد.
System.out. print ln(str.last index Of("java")); |
• دستور بالا ایندکس آخرین رشته "java" موجود در رشته "java like java" رو به دست میآورد. ما دو رشته "java" با ایندکس های متفاوت یکی 0 و دیگری 8 در رشته str داریم.اما چون متد last index Of آخرین ایندکس یک رشته را در رشته دیگر پیدا میکند، مقدار ایندکس 8 رشته java رو به ما پس میدهد.
متد بعدی.......
int last index Of(String str, int from index ): |
از نقطه ایندکس from index رشته(String) مورد نظر به صورت عقب گرد شروع به پیدا کردن آخرین رشته str موجود در رشته(String) مورد نظر میکند• منظور از عقب گرد این است که اگر from index =4 بود، از ایندکس چهارم رشته مورد نظر شروع به پیدا کردن رشته str میکند، اگر در ایندکس 4 رشته مورد نظر، رشته str پیدا شد خب ایندکس 4 به ما پس داده میشود در غیر این صورت به سمت عقب یعنی ایندکس 3 حرکت میکند و رشته str را در ایندکس 3 رشته مورد نظر چک میکند و در صورتی که رشته str در ایندکس 3 رشته مورد نظر پیدا نشد میره سراغ 2 و...
Example:
package java like ;
public class Test5 {
public static void main(String[] args) {
String str = "java like java";
System.out. print ln(str.last index Of("java",5));
} } |
خروجی(output):
توضیحات:String str = "java like java"; |
• یک String ایجاد کرده که در درون خود دو رشته "java" دارد.
System.out. print ln(str.last index Of("java",5)); |
• در دستور بالا، متد last index Of از ایندکس 5 ام رشته str به صورت عقب گرد شروع به بررسی و پیدا کردن ایندکس آخرین رشته "java" موجود در رشته str میکند، در بازه بین 5 تا 0 تنها یک رشته "java" وجود دارد که آن هم ایندکس اش صفر است.
• بررسی عقب گرد رشته str از ایندکس 5 تا 0 را برای پیدا کردن آخرین ایندکس رشته "java" توسط متد last index Of در شکل(2) مشاهده میکنید.
Example: package java like ;
public class Last index OfExample {
public static void main(String args[]) {
String str1 = new String("This is a java like tutorial");
String str2 = new String("java");
String str3 = new String(" like ");
String str4 = new String(" like s");
System.out. print ln("Last 'a' in str1: " + str1.last index Of('a'));
System.out. print ln("Last 'a' in str1 whose index <=15:"
+ str1.last index Of('a', 15));
System.out. print ln("Last 'a' in str1 whose index <=30:"
+ str1.last index Of('a', 30));
System.out. print ln("Last occurrence of str2 in str1:"
+ str1.last index Of(str2));
System.out. print ln("Last occurrence of str2 in str1 before 15:"
+ str1.last index Of(str2, 15));
System.out. print ln("Last occurrence of str3 in str1:"
+ str1.last index Of(str3));
System.out. print ln("Last occurrence of str4 in str1"
+ str1.last index Of(str4));
System.out. print ln("Last occurrence of 'is' in str1:"
+ str1.last index Of("is"));
System.out. print ln("Last occurrence of 'is' in str1 before 4:"
+ str1.last index Of("is", 4));
}
}
|
خروجی(output):
Last 'a' in str1: 25
Last 'a' in str1 whose index <=15:13
Last 'a' in str1 whose index <=30:25
Last occurrence of str2 in str1:10
Last occurrence of str2 in str1 before 15:10
Last occurrence of str3 in str1:14
Last occurrence of str4 in str1-1
Last occurrence of 'is' in str1:5
Last occurrence of 'is' in str1 before 4:2 |
پیروز و موفق باشید
این جلسه آموزشی را میتوانید بصورت کتاب الکترونیکی (PDF شده) در لینک زیر دریافت کنید.
این جلسه آموزشی را بصورت کامل و مرتب شده در لینک زیر دانلود کنید:(در صورت خرابی لینک گزارش دهید)
لینک دانلود
باز نشر این مطلب تنها بصورت PDF و با ذکر منبع (لینک سایت) بلامانع است.
برای با خبر شدن از جدیدترین مطالب آموزشی جاوا عضو کانال تلگرام ما شوید.