logo

Java String obsahuje()

The Třída Java String obsahuje() metoda prohledává sekvenci znaků v tomto řetězci. Vrací se skutečný pokud je v tomto řetězci nalezena posloupnost hodnot znaků, jinak se vrátí Nepravdivé .

Podpis

Podpis metody string obsahuje() je uveden níže:

sql ddl příkazy
 public boolean contains(CharSequence sequence) 

Parametr

sekvence : určuje posloupnost znaků, které mají být prohledávány.

Návraty

skutečný pokud posloupnost hodnoty znaku existuje, jinak Nepravdivé .

Výjimka

Výjimka NullPointerException : pokud je sekvence nulová.

Vnitřní implementace

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

Zde probíhá převod CharSequence na String. Poté je vyvolána metoda indexOf() . Metoda indexOf() buď vrátí 0 nebo číslo větší než 0 v případě, že je hledaný řetězec nalezen.

Když však hledaný řetězec není nalezen, metoda indexOf() vrátí hodnotu -1. Proto po provedení metoda obsahuje() vrátí hodnotu true, když metoda indexOf() vrátí nezápornou hodnotu (když je nalezen hledaný řetězec); jinak metoda vrátí false.

Java String obsahuje() Příklad metody

Název souboru: 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')); }} 
Otestujte to hned

Výstup:

co je řečník
 true true false 

Java String obsahuje() Příklad metody 2

Metoda obsahuje() prohledává sekvenci znaků rozlišující malá a velká písmena. Pokud argument nerozlišuje velká a malá písmena, vrátí hodnotu false. Podívejme se na příklad.

Název souboru: ObsahujePří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ýstup:

 true false 

Java String obsahuje() Příklad metody 3

Metoda obsahuje() je užitečná k nalezení znakové sekvence v řetězci. Můžeme jej použít v řídicí struktuře k vytvoření výsledku založeného na vyhledávání. Podívejme se na příklad.

Název souboru: ObsahujePří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ýstup:

pd.merge
 This string contains javatpoint.com 

Java String obsahuje() Příklad metody 4

Metoda obsahuje() vyvolá výjimku NullPointerException, když v parametru metody předáte hodnotu null. Následující příklad ukazuje totéž.

Název souboru: ObsahujePří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ýstup:

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

Omezení metody Contains().

Níže jsou uvedena některá omezení metody obsahuje():

  • Metoda obsahuje() by se neměla používat k hledání znaku v řetězci. Pokud tak učiníte, dojde k chybě.
  • Metoda obsahuje() pouze kontroluje přítomnost nebo nepřítomnost řetězce v jiném řetězci. Nikdy neprozradí, na kterém indexu se hledaný index nachází. Kvůli těmto omezením je lepší použít metodu indexOf() místo metody obsahuje().