String is gelijk aan Javascript
__main__ Python module |
ast Python module |
code Python module |
COM PHP module |
dis Python module |
Ev PHP module |
exp |
iat |
io Python module |
JavaScript |
operator Python module |
os Python module |
Python functions |
re Python module |
SPL PHP module |
StackOverflow |
stat Python module |
string Python module |
Strings PHP module |
UI PHP module
Michael Zippo
Er zijn drie manieren om strings in Java te vergelijken. De Java-methode equals ()
vergelijkt twee tekenreeksobjecten, de gelijkheidsoperator ==
vergelijkt twee tekenreeksen en de compareTo ()
-methode retourneert het getal verschil tussen twee strings.
Het vergelijken van strings is een cruciaal onderdeel van het werken met strings in Java. Als je bijvoorbeeld een koffie-app aan het bouwen bent die controleert wie dat drankje heeft besteld, wil je het misschien vergelijken met wat je in ons bestand hebt.
naam klant In deze tutorial wordt met verwijzingen en voorbeelden besproken hoe om strings in Java te vergelijken. We zullen de drie belangrijkste opties bespreken die worden gebruikt om tekenreeksen te vergelijken en de beperkingen van de operator ==
onderzoeken bij het vergelijken van tekenreeksen in Java.
Aan het einde van het lezen van deze zelfstudie, zult u be Ik zal een expert zijn in het vergelijken van strings in Java.
Java Strings
Strings worden gebruikt om tekstgebaseerde data op te slaan bij het programmeren. Strings in Java worden gedefinieerd als een reeks tekens tussen aanhalingstekens. Hier is een voorbeeld van een tekenreeks in Java:
In dit voorbeeld declareren we een tekenreeks met de naam day
die de waarde Monday
opslaat.
Wat als we wilden string vergelijken met een andere string? Er zijn drie hoofdmethoden die kunnen worden gebruikt om strings in Java te vergelijken. Dit zijn:
- Gebruik
==
operator - Gebruik
equals ()
en equalsIgnoreCase ()
- De methoden
compareTo ()
en compareToIgnoreCase () gebruiken
Vergelijk strings met ==
==
operator, bekend onder de naam van de gelijkheidsoperator, wordt gebruikt om twee strings in Java te vergelijken.
Stel dat we een coffeeshop runnen en we willen vergelijken of de naam van een klant overeenkomt met de naam die we aan een bepaalde bestelling hebben gekoppeld. We kunnen deze namen vergelijken met de volgende code:
Onze code geeft als resultaat:
Break from Onze code afgedaald. Eerst declareren we een klasse genaamd CompareNames
die de code voor ons programma opslaat. We declareren dan een variabele orderName
die de naam opslaat die aan een bepaalde bestelling is gekoppeld en een variabele genaamd customerName
die de naam opslaat van de klant die op zoek is naar hun drankje.
>
We gebruiken dan een if-statement en de gelijkheidsoperator voor voor de waarde van orderName
en de waarde van customerName
. regel code die deze vergelijking uitvoert:
Als de waarden ​​opgeslagen in orderName
en klantnaam
zijn hetzelfde, in dit geval komt het bericht naam klant overeen met de naam van de bestelling.
wordt afgedrukt op de console. Anders wordt het bericht Klantnaam komt niet overeen met de ordernaam.
is afgedrukt op de console.
string Vergelijk objecten met ==
In het bovenstaande voorbeeld, we hebben twee strings gedeclareerd en uti Lees de ==
operator om ze te vergelijken. Deze benadering werkt echter niet bij het vergelijken van twee tekenreeksobjecten.
Dit is wat er gebeurt als we proberen twee tekenreeksobjecten te vergelijken met de operator ==
:
Onze code retourneert:
Hoewel we de tekenreekswaarde James
toewijzen aan de twee tekenreeksobjecten, behandelt het programma ze niet hetzelfde. Dit komt omdat het programma niet de waarde van de tekenreeksen vergelijkt, maar de objecten zelf.
In onze code hebben we twee tekenreeksobjecten gedeclareerd, die elk verwijzingen naar verschillende objecten hebben. Dus als we ze proberen te vergelijken met ==
, behandelen ze ons programma als verschillende objecten.
Vergelijk strings met equals ()
De Java-string The equals ()
vergelijkt twee strings in Java
Beide achterkanten gaan naar het koffievoorbeeld. we willen de naam die we hebben gekoppeld aan een koffiebestelling en de naam van een klant vergelijken. We kunnen dit doen met deze code:
Onze code geeft als resultaat:
In dit voorbeeld gebruiken we de equals ()
om de waarden ​​van of rderName
en te vergelijken customerName
.
We kennen de waarde van equals ()
toe aan een boolean genaamd AreEqual
. Als AreEqual
waar is, geeft de console een bericht weer waarin staat dat Klantnaam overeenkomt met de naam van de bestelling
. anders, als AreEqual
false retourneert, wordt er een bericht afgedrukt op de console waarin wordt aangegeven dat de naam van de klant niet overeenkomt met de naam van de bestelling.
. In dit geval zijn orderName
en customerName
hetzelfde, AreEqual
is gelijk aan true.
U kunt equalsIgnoreCase ()
op dezelfde manier als equals ()
om strings te vergelijken. Het enige verschil tussen equals ()
en equalsIgnoreCase ()
is dat de laatste twee strings vergelijkt, ongeacht hun hoofdletters, terwijl de eerste hoofdlettergevoelig is.
Als je meer wilt weten over de equals ()
-reeks, lees dan onze tutorial over dit onderwerp.
Vergelijk strings met CompareTo ()
De Java compareTo ()
string methode wordt gebruikt om twee strings lexicografisch te vergelijken
compareTo () methode
vergelijkt de Unicode-waarde van elk teken in de twee strings die u vergelijkt. compareTo ()
retourneert 0 als de tekenreeks gelijk is aan de andere tekenreeks, kleiner dan 0 als de tekenreeks minder tekens bevat dan de andere tekenreeks, en groter dan 0 als de tekenreeks meer dan tekens bevat dan de andere string.
Stel dat we de namen van onze cafetaria-klanten ssicografisch willen vergelijken met de naam die we associëren met een glas dat we zou het kunnen doen met deze code:
Onze code retourneert:
In dit voorbeeld is onze code gebruikt compareTo ()
om de waarde van customerName
te vergelijken met de waarde van orderName
code>, in dit geval de waarde van orderName
, James
, komt niet overeen met de waarde van customerName
, Bill
.
Sinds orderName
heeft meer tekens dan customerName
, onze code retourneert een waarde groter dan 0, gelijk aan de Unicode-verschillen in onze twee tekenreeksen.
Bovendien is de De methode CompareTo ()
is hoofdlettergevoelig. Als u lexicografische tekenreeksen wilt vergelijken, ongeacht de hoofdletters van tekens in uw tekenreeksen, kunt u de compareToIgnoreCase ()-methode
gebruiken. De syntaxis van de compareTo () methode
en compareToIgnoreCase ()
is hetzelfde.
Conclusie
Waarden vergelijken ‚Äã‚ Äãopgeslagen in twee tekenreeksen is een veelvoorkomende bewerking in Java.
In deze zelfstudie wordt uitgelegd hoe u twee tekenreeksen kunt vergelijken met behulp van de gelijkheidsoperator (==
), is gelijk aan ()
en compareTo () methode
. We hebben ook de beperkingen van de gelijkheidsoperator besproken bij het vergelijken van objecten. We hebben ook een voorbeeld van elk van deze methoden in actie laten zien.
Je hebt nu de vaardigheden om strings in Java te vergelijken als een professionele programmeur!