بکندباز

متد 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()

backendbaz

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

دیدگاه‌ها

*
*