بکندباز

متد indexOf()‎ در جاوا

در این آموزش با کمک مثال هایی با متد indexOf()‎ آشنا می شویم.

متد indexOf()‎ ایندکس اولین رخداد کاراکتر یا رشته فرعی مشخص شده را در رشته برمی گرداند .

مثال

class Main {
  public static void main(String[] args) {
    String str1 = "Java is fun";
    int result;

    // getting index of character 's'
    result = str1.indexOf('s');

    System.out.println(result);
  }
}

// Output: 6

سینتکس متد indexOf()‎

string.indexOf(int ch, int fromIndex)

یا

string.indexOf(String str, int fromIndex)

در اینجا، string یک شیء از کلاس Stringاست.


پارامترهای متد indexOf()‎

برای پیدا کردن ایندکس یک کاراکتر، متد indexOf()‎، این دو پارامتر را در نظر بگیرید:

  • ch – کاراکتری که ایندکس در آن پیدا می شود
  • fromIndex (اختیاری) – در صورت fromIndex ارسال شود، کاراکتر ch با شروع از این ایندکس جستجو می شود

برای یافتن اندیس زیررشته مشخص شده در رشته، متد indexOf()‎، این دو پارامتر را می گیرد:

  • str – رشته ای که ایندکس در آن پیدا می شود
  • fromIndex (اختیاری) – اگر fromIndexارسال شود، رشته str با شروع از این ایندکس جستجو می شود

مقدار بازگشتی متد indexOf()‎

  • ایندکس اولین رخداد کاراکتر/رشته مشخص شده را برمی گرداند
  • اگر کاراکتر/رشته مشخص شده پیدا نشود -1 را برمی گرداند .

مثال 1: متد indexOf()‎

// Java String indexOf()‎ with only one parameter
class Main {
  public static void main(String[] args) {
    String str1 = "Learn Java";
    int result;

    // getting index of character 'J'
    result = str1.indexOf('J');
    System.out.println(result); // 6

    // the first occurrence of 'a' is returned
    result = str1.indexOf('a');
    System.out.println(result); // 2

    // character not in the string
    result = str1.indexOf('j');
    System.out.println(result); // -1

    // getting the index of "ava"
    result = str1.indexOf("ava");

    System.out.println(result); // 7

    // substring not in the string
    result = str1.indexOf("java");

    System.out.println(result); // -1

    // index of empty string in the string
    result = str1.indexOf("");

    System.out.println(result); // 0
  }
}

یادداشت:

  • کاراکتر 'a'چندین بار در رشته "Learn Java" پیدا می شود. متد indexOf()‎  ایندکس اولین وقوع 'a'(که در ایندکس 2 است) را برمی گرداند.
  • اگر رشته خالی ارسال شود، indexOf()‎ مقدار 0 را برمی گرداند (در موقعیت اول یافت می شود. به این دلیل است که رشته خالی زیرمجموعه ای از هر زیر رشته است.)

مثال 2: indexOf()‎ با پارامتر fromIndex

class Main {
  public static void main(String[] args) {
    String str1 = "Learn Java programming";
    int result;

    // getting the index of character 'a'
    // search starts at index 4
    result = str1.indexOf('a', 4);

    System.out.println(result);  // 7

    // getting the index of "Java"
    // search starts at index 8
    result = str1.indexOf("Java", 8);

    System.out.println(result);  // -1
  }
}

یادداشت:

  • اولین رخداد 'a'در "Learn Java programming" در ایندکس 2 است. با این حال، ایندکس دومین 'a'در هنگام اجرای متد  str1.indexOf('a', 4) برگردانده می شود. به این دلیل است که جستجو از ایندکس 4 شروع می شود.
  • رشته "Java"در "Learn Java programming" موجود است. با این حال، str1.indexOf("Java", 8) مقدار -1 را برمی گرداند (رشته پیدا نشد). به این دلیل است که جستجو از ایندکس 8 شروع می شود و "Java" در "va programming"  وجود ندارد .

مطالعه توصیه شده: Java String lastIndexOf()‎

zohreh

مدیر وب سایت بکندباز

دیدگاه‌ها

*
*