CodeGym /Java blog /Tilfældig /Java-strengen indeholder() metode
John Squirrels
Niveau
San Francisco

Java-strengen indeholder() metode

Udgivet i gruppen
Denne funktion er specielt designet til at kontrollere, om en streng 'indeholder' en anden streng eller ej. Hvis du er ny til dette, kan du ende med at bruge det til at finde en 'karakter'. Men det tjener ikke formålet. I denne artikel vil vi behandle, hvordan java.lang.String.contains() bruges, implementeres, og hvilke undtagelser der kan opstå, hvis de ikke bruges omhyggeligt.

Hvad er contains()-metoden?

Du kan bruge contains(String key) -metoden til at " finde ", hvis en bestemt streng " key " er til stede i en bestemt streng eller ej. Hvis "nøgle" findes, returneres "true". Ellers får du en "falsk".Java-strengen indeholder() metode - 1

Intern implementering

Denne metode er allerede implementeret af java.lang.String . Du behøver ikke selv at implementere dette. Her er en hurtig forklaring til din forståelse.

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

Kodeforklaring

contains()- metoden, tager en CharSequence som en inputparameter. Som senere konverteres til en "String". Så er dette udtryk beregnet indexOf(key.toString()) > -1; . Hvilket betyder, at hvis denne "nøgle" findes ved et hvilket som helst indeks ("0" eller højere), så returneres "true". Og hvis nøglen ikke findes, returneres en "falsk".

Hvordan bruger man contains() metoden?

Sådan kan du bruge det.

public class ContainsMethod {
    public static void main(String[] args) {

	String input = "A brown fox jumped over a lazy dog.";

	// check the containing strings
	System.out.println("input.contains(bro) = " + input.contains("bro"));
	System.out.println("input.contains(brown) = " + input.contains("brown"));
	System.out.println("input.contains(Brown) = " + input.contains("Brown"));

	System.out.println("input.contains(fox) = " + input.contains("fox"));
	System.out.println("input.contains(xof) = " + input.contains("xof"));
		
	System.out.println("input.contains(dog) = " + input.contains("dog"));
	System.out.println("input.contains(lazyy) = " + input.contains("lazyy"));
	System.out.println("input.contains(jumping) = " + input.contains("jumping"));
    }
}
Produktion
input.contains(bro) = true input.contains(brown) = true input.contains(Brown) = false // false fordi der skelnes mellem store og små bogstaver input.contains(fox) = true input.contains(xof) = false // false fordi rækkefølgen skal være den samme input.contains(dog) = true input.contains(lazyy) = false // false fordi hele understrengen ikke blev fundet input.contains(jumping) = false

Kodeforklaring

Bemærk venligst, at denne metode skelner mellem store og små bogstaver for inputparametre. Så i ovenstående uddrag kan du se, når du søger "brown" returneres true , mens false returneres for "brown". Du får også sandhed , hvis du finder "ræv" og falsk for "xof" eller "oxf", fordi rækkefølgen af ​​tegn skal være den samme. Til sidst, hvis du finder "jump" eller "jumped", vil du få en sand , da hele parameteren er til stede i " input "-strengen. Hvorimod, hvis du tjekker for "jumping", returneres falsk , fordi hele nøglen ("hopping") ikke findes.

Tage sig af undtagelser

metoden java.lang.String.contains() resulterer i en Null Pointer-undtagelse, hvis du glemmer at initialisere parameterstrengen med en konkret værdi.

public class ContainsMethod {
    public static void main(String[] args) {

      String input = "Here is a test string.";
      String test = null;

	// check what happens if you look for a null string 
	System.out.println("input.contains(test) = " + input.contains(test));
	}
}
Produktion

Exception in thread "main" java.lang.NullPointerException
	at java.lang.String.contains(String.java:2133)
	at ContainsMethod.main(ContainsMethod.java:8)

Konklusion

Contains()- metoden giver et praktisk java-værktøj til at finde en hvilken som helst char-sekvens eller en streng. Vi håber, at du ved slutningen af ​​dette indlæg er bekendt med dets brug og implementering. For en endnu bedre forståelse opfordres du til at smøge ærmerne op og gå på arbejde. Oprettelse af fejlfri kode kommer med en konsekvent indsats. Så lad os få det gutter! Du er altid velkommen til at komme tilbage hertil, når du går i stå. Glad kodning. :)
Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION