logo

Java String indexOf()

The Java String trieda indexOf() metóda vráti pozíciu prvého výskytu zadaného znaku alebo reťazca v zadanom reťazci.

Podpis

V Jave sú štyri preťažené metódy indexOf(). Podpis metód indexOf() je uvedený nižšie:

NieMetódaPopis
1int indexOf(int ch)Vráti pozíciu indexu pre danú hodnotu znaku
2int indexOf(int ch, int fromIndex)Vráti pozíciu indexu pre danú hodnotu znaku a z indexu
3int indexOf(podreťazec reťazca)Vráti pozíciu indexu pre daný podreťazec
4int indexOf(podreťazec reťazca, int z indexu)Vráti pozíciu indexu pre daný podreťazec a z indexu

Parametre

ch : Ide o znakovú hodnotu, napr. 'a'

z Indexu : Pozícia indexu, odkiaľ sa vracia index hodnoty znaku alebo podreťazca.

podreťazec : Podreťazec, ktorý sa má v tomto reťazci vyhľadať.

Návraty

Index hľadaného reťazca alebo znaku.

Interná implementácia

 public int indexOf(int ch) { return indexOf(ch, 0); } 

Príklad metódy Java String indexOf().

Názov súboru: 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 }} 
Vyskúšajte to

Výkon:

 2 8 5 3 

Pozorujeme, že keď sa nájde hľadaný reťazec alebo znak, metóda vráti nezápornú hodnotu. Ak sa reťazec alebo znak nenájde, vráti sa -1. Túto vlastnosť môžeme použiť na zistenie celkového počtu znakov prítomných v danom reťazci. Všimnite si nasledujúci príklad.

Názov súboru: 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'); } } 

Výkon:

 In the String: Welcome to JavaTpoint The 'o' character has come 3 times 

Java String indexOf(String substring) Príklad metódy

Metóda berie ako argument podreťazec a vracia index prvého znaku podreťazca.

Názov súboru: 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); } } 
Vyskúšajte to

Výkon:

 index of substring 16 

Java String indexOf(String podreťazec, int fromIndex) Príklad metódy

Metóda berie ako argumenty podreťazec a index a vracia index prvého znaku, ktorý sa vyskytuje po danom z Indexu .

Názov súboru: 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); } } 
Vyskúšajte to

Výkon:

 index of substring 16 index of substring -1 

Java String indexOf(int char, int fromIndex) Príklad metódy

Metóda berie char a index ako argumenty a vracia index prvého znaku, ktorý sa vyskytuje po danom z Indexu .

Názov súboru: 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); } } 
Vyskúšajte to

Výkon:

 index of char 17