The Clasa Java String indexOf() metoda returnează poziția primei apariții a caracterului sau șirului specificat într-un șir specificat.
Semnătură
Există patru metode indexOf() supraîncărcate în Java. Semnătura metodelor indexOf() este dată mai jos:
Nu. | Metodă | Descriere |
---|---|---|
1 | int indexOf(int ch) | Returnează poziția indexului pentru valoarea de caracter dată |
2 | int indexOf(int ch, int dinIndex) | Returnează poziția indexului pentru valoarea dată de caracter și din index |
3 | int indexOf(subșir șir) | Returnează poziția indexului pentru subșirul dat |
4 | int indexOf(șir subșir, int dinIndex) | Returnează poziția indexului pentru subșirul dat și din index |
Parametrii
cap : este o valoare de caracter, de ex. 'A'
dinIndex : Poziția indexului de unde este returnat indexul valorii char sau al subșirului.
subșir : Un subșir care trebuie căutat în acest șir.
Se intoarce
Indexul șirului sau caracterului căutat.
Implementare internă
public int indexOf(int ch) { return indexOf(ch, 0); }
Exemplu de metodă Java String indexOf().
Nume de fișier: IndexOfExample.java
public class IndexOfExample{ public static void main(String args[]){ String s1='this is index of example'; //passing substring int index1=s1.indexOf('is');//returns the index of is substring int index2=s1.indexOf('index');//returns the index of index substring System.out.println(index1+' '+index2);//2 8 //passing substring with from index int index3=s1.indexOf('is',4);//returns the index of is substring after 4th index System.out.println(index3);//5 i.e. the index of another is //passing char value int index4=s1.indexOf('s');//returns the index of s char value System.out.println(index4);//3 }}Testează-l acum
Ieșire:
2 8 5 3
Observăm că atunci când se găsește un șir sau un caracter căutat, metoda returnează o valoare nenegativă. Dacă șirul sau caracterul nu este găsit, este returnat -1. Putem folosi această proprietate pentru a găsi numărul total al unui caracter prezent în șirul dat. Observați următorul exemplu.
Nume de fișier: IndexOfExample5.java
public class IndexOfExample5 { // main method public static void main(String argvs[]) { String str = 'Welcome to JavaTpoint'; int count = 0; int startFrom = 0; for(; ;) { int index = str.indexOf('o', startFrom); if(index >= 0) { // match found. Hence, increment the count count = count + 1; // start looking after the searched index startFrom = index + 1; } else { // the value of index is - 1 here. Therefore, terminate the loop break; } } System.out.println('In the String: '+ str); System.out.println('The 'o' character has come '+ count + ' times'); } }
Ieșire:
In the String: Welcome to JavaTpoint The 'o' character has come 3 times
Java String indexOf(String substring) Exemplu de metodă
Metoda ia subșir ca argument și returnează indexul primului caracter al subșirului.
Nume de fișier: IndexOfExample2.java
public class IndexOfExample2 { public static void main(String[] args) { String s1 = 'This is indexOf method'; // Passing Substring int index = s1.indexOf('method'); //Returns the index of this substring System.out.println('index of substring '+index); } }Testează-l acum
Ieșire:
index of substring 16
Java String indexOf(String substring, int fromIndex) Exemplu de metodă
Metoda ia subșir și index ca argumente și returnează indexul primului caracter care apare după data dinIndex .
Nume de fișier: IndexOfExample3.java
public class IndexOfExample3 { public static void main(String[] args) { String s1 = 'This is indexOf method'; // Passing substring and index int index = s1.indexOf('method', 10); //Returns the index of this substring System.out.println('index of substring '+index); index = s1.indexOf('method', 20); // It returns -1 if substring does not found System.out.println('index of substring '+index); } }Testează-l acum
Ieșire:
index of substring 16 index of substring -1
Java String indexOf(int char, int fromIndex) Exemplu de metodă
Metoda ia char și index ca argumente și returnează indexul primului caracter care apare după data dinIndex .
Nume de fișier: IndexOfExample4.java
public class IndexOfExample4 { public static void main(String[] args) { String s1 = 'This is indexOf method'; // Passing char and index from int index = s1.indexOf('e', 12); //Returns the index of this char System.out.println('index of char '+index); } }Testează-l acum
Ieșire:
index of char 17