logo

Java String obsahuje()

The Java String trieda obsahuje() metóda hľadá postupnosť znakov v tomto reťazci. Vracia sa pravda ak sa v tomto reťazci nájde postupnosť hodnôt char, inak sa vráti falošný .

Podpis

Podpis metódy string obsahuje() je uvedený nižšie:

 public boolean contains(CharSequence sequence) 

Parameter

sekvencie : určuje postupnosť znakov, ktoré sa majú hľadať.

Návraty

pravda ak sekvencia hodnoty char existuje, inak falošný .

Výnimka

Výnimka NullPointerException : ak je sekvencia nulová.

Interná implementácia

 public boolean contains(CharSequence s) { return indexOf(s.toString()) > -1; } 

Tu prebieha konverzia CharSequence na String. Potom sa vyvolá metóda indexOf(). Metóda indexOf() vráti 0 alebo číslo väčšie ako 0 v prípade, že sa nájde hľadaný reťazec.

Keď sa však hľadaný reťazec nenájde, metóda indexOf() vráti hodnotu -1. Preto po vykonaní metóda obsahuje() vráti hodnotu true, keď metóda indexOf() vráti nezápornú hodnotu (keď sa nájde hľadaný reťazec); v opačnom prípade metóda vráti hodnotu false.

Java String obsahuje() Príklad metódy

Názov súboru: ObsahujeExample.java

 class ContainsExample{ public static void main(String args[]){ String name='what do you know about me'; System.out.println(name.contains('do you know')); System.out.println(name.contains('about')); System.out.println(name.contains('hello')); }} 
Vyskúšajte to

Výkon:

 true true false 

Java String obsahuje() Príklad metódy 2

Metóda obsahuje() prehľadáva sekvenciu znakov, v ktorej sa rozlišujú malé a veľké písmená. Ak argument nerozlišuje veľké a malé písmená, vráti hodnotu false. Pozrime sa na príklad.

Názov súboru: ObsahujePríklad2.java

 public class ContainsExample2 { public static void main(String[] args) { String str = 'Hello Javatpoint readers'; boolean isContains = str.contains('Javatpoint'); System.out.println(isContains); // Case Sensitive System.out.println(str.contains('javatpoint')); // false } } 

Výkon:

 true false 

Java String obsahuje() Príklad metódy 3

Metóda obsahuje() je užitočná na nájdenie char-sekvencie v reťazci. Môžeme ho použiť v riadiacej štruktúre na vytvorenie výsledku založeného na vyhľadávaní. Pozrime sa na príklad.

Názov súboru: ObsahujePríklad3.java

 public class ContainsExample3 { public static void main(String[] args) { String str = 'To learn Java visit Javatpoint.com'; if(str.contains('Javatpoint.com')) { System.out.println('This string contains javatpoint.com'); }else System.out.println('Result not found'); } } 

Výkon:

 This string contains javatpoint.com 

Java String obsahuje() Príklad metódy 4

Metóda obsahuje() vyvolá výnimku NullPointerException, keď v parametri metódy prejde null. Nasledujúci príklad ukazuje to isté.

Názov súboru: ObsahujePríklad4.java

 public class ContainsExample4 { // main method public static void main(String argvs[]) { String str = 'Welcome to JavaTpoint!'; // comparing a string to null if(str.contains(null)) { System.out.println('Inside the if block'); } else { System.out.println('Inside the else block'); } } } 

Výkon:

 Exception in thread 'main' java.lang.NullPointerException at java.base/java.lang.String.contains(String.java:2036) at ContainsExample4.main(ContainsExample4.java:9) 

Obmedzenia metódy Contains().

Nasledujú niektoré obmedzenia metódy obsahuje():

  • Metóda obsahuje() by sa nemala používať na vyhľadávanie znaku v reťazci. Výsledkom je chyba.
  • Metóda obsahuje() iba kontroluje prítomnosť alebo neprítomnosť reťazca v inom reťazci. Nikdy neprezradí, na ktorom indexe sa hľadaný index nachádza. Kvôli týmto obmedzeniam je lepšie použiť metódu indexOf() namiesto metódy obsahuje().