logo

Java-strengen indeholder()

Det Java String-klassen indeholder() metoden søger efter sekvensen af ​​tegn i denne streng. Det vender tilbage rigtigt hvis sekvensen af ​​char-værdier findes i denne streng, returneres ellers falsk .

Underskrift

Signaturen for strengen contains() metode er givet nedenfor:

 public boolean contains(CharSequence sequence) 

Parameter

rækkefølge : angiver rækkefølgen af ​​tegn, der skal søges i.

Vender tilbage

rigtigt hvis sekvensen af ​​char-værdi findes, ellers falsk .

Undtagelse

NullPointerException : hvis rækkefølgen er nul.

Intern implementering

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

Her foregår konverteringen af ​​CharSequence til String. Derefter aktiveres indexOf() metoden. Metoden indexOf() returnerer enten 0 eller et tal større end 0, hvis den søgte streng bliver fundet.

Men når den søgte streng ikke findes, returnerer metoden indexOf() -1. Derfor returnerer metoden contains() efter udførelse sand, når indexOf() metoden returnerer en ikke-negativ værdi (når den søgte streng er fundet); ellers returnerer metoden falsk.

Java-strengen indeholder() Metodeeksempel

Filnavn: IndeholderExample.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')); }} 
Test det nu

Produktion:

 true true false 

Java-strengen indeholder() Metodeeksempel 2

Metoden contains() søger efter store og små bogstaver i tegnsekvensen. Hvis argumentet ikke skelner mellem store og små bogstaver, returnerer det falsk. Lad os se et eksempel.

Filnavn: IndeholderEksempel2.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 } } 

Produktion:

 true false 

Java-strengen indeholder() Metodeeksempel 3

Metoden contains() er nyttig til at finde en char-sekvens i strengen. Vi kan bruge det i kontrolstrukturen til at producere det søgebaserede resultat. Lad os se et eksempel.

Filnavn: IndeholderEksempel3.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'); } } 

Produktion:

 This string contains javatpoint.com 

Java-strengen indeholder() Metodeeksempel 4

Metoden contains() hæver NullPointerException, når man sender null i parameteren for metoden. Følgende eksempel viser det samme.

Filnavn: IndeholderEksempel4.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'); } } } 

Produktion:

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

Begrænsninger af Contains()-metoden

Følgende er nogle begrænsninger af contains()-metoden:

returnerer arrays i java
  • Metoden contains() bør ikke bruges til at søge efter et tegn i en streng. Det resulterer i en fejl.
  • Metoden contains() kontrollerer kun tilstedeværelsen eller fraværet af en streng i en anden streng. Den afslører aldrig, i hvilket indeks det søgte indeks er fundet. På grund af disse begrænsninger er det bedre at bruge indexOf()-metoden i stedet for contains()-metoden.