Tekenreeksen in Java vergelijken
De klas "snaar" (reeks tekens) van Java bevat verschillende methoden om zowel complete ketens als delen ervan te vergelijken. Sommige methoden retourneren gehele getallen, terwijl anderen booleaanse waarden retourneren. In deze gids vindt u verschillende manieren om twee verschillende ketens te vergelijken met verschillende methoden die al in de klasse String zijn opgenomen.
stappen
1
Maak twee objecten van de klasse String. De eenvoudigste manier om twee strings in Java te declareren is door de volgende code te gebruiken. "snaar" is de verklaring van het type object. string1 en string2 zijn de namen van elke string. De woorden "hallo" en "vader" ze zijn in wezen de waarden van de objecten van het ketentype. Telkens wanneer de compiler offertes vindt, wordt er automatisch een tekenreeks (tekenreeks) gemaakt.
String string1 = "hallo"-String string2 = "vader"-
2
Gebruik de Booleaanse functie: startsWith (String-prefix) om de eerste karakters van de string te vergelijken. Deze methode van de klasse String vergelijkt de eerste tekens van een tekenreeks met wat u in de methode hebt ingevoerd. Omdat het een Booleaanse methode is, zal deze terugkeren "waar" (waar) of "vals" (False). Gebruik de volgende code en een van de reeksen die u eerder hebt gemaakt. De volgende code zal u een voorbeeld van een echte zaak en een valse zaak laten zien. Het zal ook een bericht met het resultaat afdrukken. De uitvoer zal zijn "waar" en dan "vals".
System.out.println (string1.startsWith ("ho")) - // retourneert "waar" en afdrukken "waar"System.out.println (string1.startsWith ("ma")) - // retourneert "vals" en afdrukken "vals"
3
Gebruik de Booleaanse functie: startsWith (String-prefix, int-offset). De methode van de klasse String vergelijkt een tekenreeks met de waarde die u als voorvoegsel invoert ("voorvoegsel") op het punt in de keten dat is opgegeven met de waarde van "compenseren". De volgende code zal u een voorbeeld van een echte zaak en een valse zaak laten zien. Houd er rekening mee dat wanneer u letters in een tekenreeks telt, u begint met het cijfer 0. Bijvoorbeeld in het woord "hallo", "h" is spatie 0 en "en" Het is ruimte 1.
System.out.println (string1.startsWith ("de",)) - // retourneert "waar" en afdrukken "waar"System.out.println (string1.startsWith ("de", 1)) - // retourneert "vals" en afdrukken "vals"
4
Gebruik de Booleaanse functie: endsWith (String-prefix) om de laatste karakters van de string te vergelijken. Deze methode vergelijkt de laatste tekens van de tekenreeks met wat u in de methode hebt ingevoerd. Op basis van de waarde van de prefixlengte van de tekenreeks, telt de methode die waarde in de te vergelijken reeks terug. Kijk naar de volgende code die een voorbeeld van een echte zaak en een valse zaak laat zien. Deze code drukt ook het resultaat van de vergelijking af.
System.out.print (string2.endsWith ("dre")) - // retourneert "waar" en afdrukken "waar"System.out.print (string1.endsWith ("dr")) - // retourneert "vals" en afdrukken "vals"
5
Gebruik de functie: int compareTo (String anotherString) om twee kettingen te vergelijken. Maak een vergelijking van twee ketens met string1.compareTo (string2) of string2.compareTo (string1). Omdat de methode een geheel getal is, retourneert deze een geheel getal. Als de ketens niet gelijk aan elkaar zijn, zal het teruggegeven getal niet 0 zijn. Als ze gelijk zijn, is het teruggegeven getal 0. De volgende code toont u een voorbeeld van een geval waarin ze hetzelfde zijn en een andere waar ze niet zijn. De code zal ook het resultaat in het systeem afdrukken.
String string1 = "hallo"-String string2 = "hallo"-String string3 = "vader"-System.out.println (string1.compareTo (string2)) - // print `0` omdat beide hetzelfdeSystem.out.println zijn (string1.compareTo (string3) - // print een geheel getal anders dan `0`
tips
- U kunt deze code gebruiken in een voorwaardelijke instructie om een foutmelding weer te geven als de tekenreeksen niet overeenkomen:
if (myString1.compareTo (myString2)! = 0) {System.out.println ("Fout! De kettingen " + myString1 + " en " + myString2 + " ze komen niet overeen ...") -}
String myString1 = new String ("abc") -String myString2 = new String ("abc"-if (myString1.equals (myString2)) {System.out.println ("De twee ketens zijn hetzelfde") -}
waarschuwingen
- Probeer geen strings te vergelijken met alleen de tekens "==" Tenzij je weet wat je gaat doen. Hierdoor wordt mogelijk niet het verwachte resultaat geretourneerd en kan de foutopsporingstijd aanzienlijk worden verlengd, vooral als u geen ervaren Java-programmeur bent.
- Vergelijk twee nulkettingen met behulp van de operator "==" zal als resultaat terugkeren "TRUE" (waar), terwijl je twee nulketens vergelijkt met ".equals ()" zal een uitzondering werpen.
Delen op sociale netwerken:
Verwant
- Hoe Java te updaten
- Hoe het percentage in Java te berekenen
- Hoe een Java-venster in Swing te sluiten
- Hoe te coderen in Base64 met Java
- Hoe twee datums in Java te vergelijken
- Hoe u uw eerste Java-programma maakt in Ubuntu Linux
- Hoe een eenvoudig programma te maken in C ++
- Hoe de som van twee getallen in Java te vinden
- Hoe u uw eerste Java-programma schrijft
- Hoe een Java-programma te schrijven met twee klassen met behulp van Eclipse
- Hoe een programma in Java te schrijven om het gemiddelde te berekenen
- Een steen-, papier- en scharengame maken in Java
- Hoe een array in Java te printen
- Hoe Java te installeren op Windows 8
- Hoe een methode in Java te noemen
- Hoe kettingen in Java te manipuleren
- Hoe dubbele aanhalingstekens in Java worden weergegeven
- Hoe de lengte van een tekenreeks in Java te krijgen
- Hoe twee kettingen te vergelijken in programmeren C
- Hoe een variabele in Java te maken
- Hoe een reeks tekens in Java te veranderen