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().