Huis Persoonlijke financiën Vergelijken Objecten in Java vergelijken - dummies

Vergelijken Objecten in Java vergelijken - dummies

Video: Java Programming Tutorial - 04 - Defining a Class and Creating Objects in Java 2024

Video: Java Programming Tutorial - 04 - Defining a Class and Creating Objects in Java 2024
Anonim

Wanneer je begint te werken met objecten in Java, merk je dat je == en kunt gebruiken! = om objecten met elkaar te vergelijken. Een knop die u op het computerscherm ziet, is bijvoorbeeld een object. Je kunt je afvragen of het ding dat met de muis is aangeklikt een bepaalde knop op je scherm is. Dit doe je met de gelijkheidsoperator van Java.

if (bijvoorbeeld getSource () == bCopy) {klembord. setText (which. getText ());

De grote gotcha met Java's vergelijkingsschema komt wanneer je twee strings vergelijkt. Wanneer u twee strings met elkaar vergelijkt, wilt u het dubbele gelijkteken niet gebruiken. Gebruik het dubbele gelijkteken om te vragen: "Is deze reeks opgeslagen op exact dezelfde plaats in het geheugen als die andere reeks? "Meestal is dat niet wat je wilt vragen.

In plaats daarvan wilt u meestal vragen: "Heeft deze tekenreeks dezelfde tekens als die andere tekenreeks? "Om de tweede vraag te stellen (de meer toepasselijke vraag) heeft het type String van Java een methode met de naam is gelijk aan. (Net als al het andere in het bekende universum is deze gelijkwaardige methode gedefinieerd in de Java API, afgekort Application Programming Interface.)

De methode equals vergelijkt twee strings om te zien of ze dezelfde tekens bevatten. Bekijk deze codelijst voor een voorbeeld met behulp van de methode voor het gelijktrekken van Java. (De afbeelding toont een run van het programma in de lijst.)

statische java importeren. Lang. Systeem. *; java importeren. util. Scanner; public class CheckPassword {public static void main (String args []) {out. print ("Wat is het wachtwoord?"); Scannertoetsenbord = nieuwe scanner (in); String wachtwoord = toetsenbord. next (); uit. println ("U typte >>" + wachtwoord + "<<"); uit. println (); if (wachtwoord == "zwaardvis") {uit. println ("Het woord dat je hebt getypt, is opgeslagen"); uit. println ("op dezelfde plaats als de echte"); uit. println ("wachtwoord, u moet een zijn"); uit. println ("hacker.");} else {out. println ("Het woord dat je hebt getypt is niet"); uit. println ("opgeslagen op dezelfde plaats als"); uit. println ("het echte wachtwoord, maar dat is"); uit. println ("no big deal.");} out. println (); if (wachtwoord, gelijk aan ("zwaardvis")) {uit. println ("Het woord dat je hebt getypt heeft de"); uit. println ("dezelfde tekens als de echte"); uit. println ("wachtwoord, u kunt ons gebruiken"); uit. println ("precious system.");} else {out. println ("Het woord dat je hebt getypt niet"); uit. println ("hebben dezelfde tekens als"); uit. println ("het echte wachtwoord, dat kan niet"); uit. println ("gebruik ons ​​kostbare systeem.");} toetsenbord. close ();}}

In de lijst het oproeptoetsenbord. next () grijpt elk woord dat de gebruiker op het toetsenbord van de computer typt. De code schuift dit woord in de variabele met de naam -wachtwoord. Vervolgens gebruiken de if-statements van het programma twee verschillende technieken om het wachtwoord te vergelijken met "zwaardvis".

De resultaten van het gebruik van == en het gebruik van dezelfde methode van Java.

De voorbeelden in het gedrukte boek zijn meestal op tekst gebaseerd, maar u kunt liefhebberversies van de meeste voorbeelden op de website van Dummies vinden. Deze liefhebberversies hebben vensters, knoppen, tekstvelden en andere elementen van een typische grafische gebruikersinterface (GUI).

De meest geschikte van de twee technieken gebruikt de Java-methode voor gelijken. De gelijkwaardigheidsmethode ziet er grappig uit, want als je het noemt, plaats je een punt na een reeks en zet je het andere tussen haakjes. Maar zo moet je het doen.

Bij het aanroepen van Java's gelijkwaardigheidsmethode, maakt het niet uit welke string de punt krijgt en welke de haakjes krijgt. In de lijst zou je bijvoorbeeld

kunnen hebben geschreven als ("zwaardvis" gelijk is aan (wachtwoord))

De methode zou net zo goed werken.

Een aanroep naar de methode voor Java-equivalenten ziet er niet uit, maar is dat niet. Er is een reden achter de schijnbare onbalans tussen de punt en de haakjes. Het idee is dat je twee objecten hebt: het wachtwoordobject en het object "zwaardvis".

Elk van deze twee objecten is van het type String. (Het wachtwoord is echter een variabele van het type String en "zwaardvis" is een letterlijke tekenreeks.) Wanneer u een wachtwoord schrijft. is gelijk aan ("zwaardvis"), dan roep je een gelijkwaardige methode aan die bij het wachtwoordobject hoort. Wanneer je die methode aanroept, voer je "zwaardvis" naar de methode als de parameter van de methode (bedoelde woordspeling).

Gebruik bij het vergelijken van strings met elkaar de gelijkwaardige methode - niet het dubbele gelijkteken.

Vergelijken Objecten in Java vergelijken - dummies

Bewerkers keuze

Hoe u Flash-video maakt en codeert - dummies

Hoe u Flash-video maakt en codeert - dummies

Als de pagina's die u maakt, zijn gewonnen ' t kan worden bekeken op mobiele apparaten (zoals een iPad of een smartphone), kunt u webpagina's maken met prachtige Flash-video. Adobe Flash Professional CS6 heeft een eigen ingebouwde video-encoder. Full-motionvideo in Flash is iets heel moois. U past de video aan voor het bekijken door de doelgroep ...

Hoe een aanpasbare interface te maken in CSS3 - dummies

Hoe een aanpasbare interface te maken in CSS3 - dummies

De grote variëteit en soorten schermen gebruikt om informatie weer te geven, maakt het nodig dat uw CSS3-commando's de gebruiker toestaan ​​om het formaat van de elementen naar wens aan te passen. In de meeste gevallen kunt u de gebruiker eenvoudig toestaan ​​om het element op elke gewenste grootte te maken. Er kunnen zich echter situaties voordoen waarin u de grootte van de grootte moet controleren ...

Hoe u een eenvoudige tabel op uw webpagina maakt - dummies

Hoe u een eenvoudige tabel op uw webpagina maakt - dummies

Tabellen laten u organiseer informatie op uw webpagina en geef het een georganiseerde uitstraling die uw bezoekers nuttig zullen vinden. Bij gebruik zoals bedoeld, hebben tabellen rijen en kolommen. Voor elke spot waar een rij en kolom elkaar kruisen, hebt u een tabelcel. Elke cel kan zijn eigen opmaak hebben: de gegevens erin ...

Bewerkers keuze

Hoe Postproduction Shareninging Filters werken - dummies

Hoe Postproduction Shareninging Filters werken - dummies

Verscherpingsfilters werken in postproductie door de randen (of aangrenzende gebieden met tonaal contrast) te benadrukken aan elkaar) in een afbeelding. Ze creëren een fijne highlight aan de donkere kant van de rand en een piepklein lowlight aan de lichtere kant van de rand. Dit toegevoegde contrast zorgt ervoor dat de randen er scherper uitzien vanaf een ...

HDR Work-Flow voor foto's met één belichting - dummies

HDR Work-Flow voor foto's met één belichting - dummies

In grote lijnen, enkele belichting hoog dynamisch bereik volgt dezelfde workflow als HDR-fotografie tussen haakjes. Er kunnen kleine verschillen zijn, dus hier is een overzicht van de werkstroom: configureer uw camera voor single-shot HDR. Het enige dat u zoekt, is de beste foto die u kunt maken. Besteed aandacht aan de lichtomstandigheden, het onderwerp, beweging en ...

Geavanceerde compacte en superzoomcamera's voor HDR-fotografie - dummies

Geavanceerde compacte en superzoomcamera's voor HDR-fotografie - dummies

Stap omhoog van compacte digitale camera's binnen het budgetbereik, vindt u duurdere compacte digitale camera's voor HDR-fotografie, ook wel high-end compacts, superzoomlenzen en dSLR-look-alikes genoemd. Er zijn zoveel vaak overlappende categorieën dat het je hoofd laat draaien. De twee dingen die deze reeks camera's gemeen hebben, zijn hun ...

Bewerkers keuze

In te schakelen Class Tracking in QuickBooks 2013 - dummies

In te schakelen Class Tracking in QuickBooks 2013 - dummies

Om activity-based costing te gebruiken (ABC ) in QuickBooks 2013 moet u de QuickBooks Class Tracking-functie inschakelen. Met Class Tracking kunt u inkomsten- en onkostentransacties categoriseren als niet alleen vallen in inkomsten- en uitgavenrekeningen, maar ook als vallen in bepaalde klassen. Volg deze stappen om Class Tracking in QuickBooks in te schakelen: Kies Bewerken → Voorkeuren ...

Gebruikt om een ​​exemplaar van een QuickBooks-gegevensbestand te gebruiken - dummies

Gebruikt om een ​​exemplaar van een QuickBooks-gegevensbestand te gebruiken - dummies

Ongeacht of de client verzendt handmatig een accountantskopie van een QuickBooks-gegevensbestand, e-mails een accountantsexemplaar, of verzendt een accountantskopie via de Intuit-bestandsoverdrachtservice, u gebruikt de kopie van de accountant door Bestand → Verzend bedrijfsdossier → Accountantskopie → Open & converteer overzetten te kiezen Bestand commando. Wanneer u deze opdracht kiest, geeft QuickBooks een ...

Hoe Audit Trails te gebruiken in QuickBooks - dummies

Hoe Audit Trails te gebruiken in QuickBooks - dummies

Als u besluit om meerdere gebruikers toegang te geven tot de QuickBooks-gegevens bestand, zult u de QuickBooks Audit Trail-functie waarderen, die bijhoudt wie welke wijzigingen aan het QuickBooks-gegevensbestand aanbrengt. U kunt transacties niet verwijderen uit de lijst of geschiedenis van de audittrail, behalve door gegevens te archiveren en te condenseren. Audit trail inschakelen ...