Zuhause Persönliche Finanzen Objekte in Java vergleichen - Dummies

Objekte in Java vergleichen - Dummies

Video: 05 Klassen und Objekte V - Vergleich mit equals-Methode 2024

Video: 05 Klassen und Objekte V - Vergleich mit equals-Methode 2024
Anonim

Wenn Sie mit Objekten in Java arbeiten, stellen Sie fest, dass Sie == und verwenden können! = Objekte miteinander vergleichen. Zum Beispiel ist eine Schaltfläche, die Sie auf dem Computerbildschirm sehen, ein Objekt. Sie können fragen, ob das, was nur mit der Maus angeklickt wurde, eine bestimmte Schaltfläche auf Ihrem Bildschirm ist. Sie tun dies mit dem Gleichheitsoperator von Java.

if (e. GetSource () == bCopy) {Zwischenablage. setText (was. getText ());

Der große Fall mit dem Java-Vergleichsschema kommt, wenn Sie zwei Strings vergleichen. Wenn Sie zwei Strings miteinander vergleichen, wollen Sie das doppelte Gleichheitszeichen nicht verwenden. Die Verwendung des doppelten Gleichheitszeichens würde fragen: "Ist diese Zeichenkette an genau derselben Stelle im Speicher gespeichert wie diese andere Zeichenkette? "Normalerweise ist das nicht das, was du fragen willst.

Stattdessen möchten Sie normalerweise fragen: "Hat diese Zeichenkette die gleichen Zeichen wie diese andere Zeichenkette? Um die zweite Frage zu stellen (die passendere Frage) hat der String-Typ von Java eine Methode mit dem Namen gleich. (Wie alle anderen Elemente im bekannten Universum ist auch diese Methode in der Java-API definiert, kurz für Application Programming Interface.)

Die equals-Methode vergleicht zwei Strings, um festzustellen, ob sie dieselben Zeichen enthalten. Ein Beispiel mit Java's equals-Methode finden Sie in dieser Codeauflistung. (Die Abbildung zeigt einen Lauf des Programms in der Auflistung.)

importiert statisches Java. lang. System. *; Java importieren. Nutz. Scanner; Öffentliche Klasse CheckPassword {public static void main (Zeichenfolge args []) {out. print ("Wie lautet das Passwort?"); Scannertastatur = neuer Scanner (in); String Passwort = Tastatur. Nächster(); aus. println ("Sie haben >> eingegeben" + Passwort + "<<"); aus. println (); if (Passwort == "Schwertfisch") {Out. println ("Das eingegebene Wort wird gespeichert"); aus. println ("an der gleichen Stelle wie die reale"); aus. println ("Passwort. Sie müssen ein" sein); aus. println ("hacker.");} sonst {aus. println ("Das eingegebene Wort ist nicht"); aus. println ("an der gleichen Stelle wie" gespeichert); aus. println ("das echte Passwort, aber das ist"); aus. println ("keine große Sache.");} out. println (); if (password. equals ("Schwertfisch")) {out. println ("Das eingegebene Wort hat den Wert"); aus. println ("gleiche Zeichen wie der echte"); aus. println ("Passwort. Sie können unser verwenden"); aus. println ("wertvolles System");} else {out. println ("Das von Ihnen eingegebene Wort nicht"); aus. println ("haben die gleichen Zeichen wie"); aus. println ("das echte Passwort. Sie können nicht"); aus. println ("benutze unser wertvolles System.");} Tastatur. close ();}}

In der Auflistung die Anruftastatur. next () liest das vom Benutzer eingegebene Wort auf der Computertastatur. Der Code schiebt dieses Wort in die Variable Passwort. Dann verwenden die if-Anweisungen des Programms zwei verschiedene Techniken, um das Passwort mit "Schwertfisch" zu vergleichen.

Die Ergebnisse der Verwendung von == und der Verwendung von Java's equals-Methode.

Die Beispiele im gedruckten Buch sind größtenteils textbasiert, aber die meisten Beispiele finden Sie auf der Dummies-Website. Diese schickeren Versionen haben Fenster, Knöpfe, Textfelder und andere Elemente einer typischen graphischen Benutzerschnittstelle (GUI).

Die geeignetere der beiden Techniken verwendet die Java-Methode equals. Die equals-Methode sieht komisch aus, weil Sie beim Aufrufen einen Punkt nach einem String setzen und den anderen String in Klammern setzen. Aber so muss man es machen.

Beim Aufrufen der Java-Methode equals spielt es keine Rolle, welche Zeichenfolge den Punkt erhält und welche die Klammern erhält. Zum Beispiel, in der Auflistung, hätten Sie

schreiben können, wenn ("Schwertfisch". Gleich (Passwort))

Die Methode würde genauso gut funktionieren.

Ein Aufruf von Java's equals-Methode sieht unausgeglichen aus, ist es aber nicht. Es gibt einen Grund für das offensichtliche Ungleichgewicht zwischen dem Punkt und den Klammern. Die Idee ist, dass Sie zwei Objekte haben: das Passwort-Objekt und das "Schwertfisch" -Objekt.

Jedes dieser beiden Objekte ist vom Typ String. (Kennwort ist jedoch eine Variable vom Typ String, und "swordfish" ist ein String-Literal.) Wenn Sie ein Kennwort schreiben. equals ("swordfish"), rufen Sie eine equals-Methode auf, die zum Kennwortobjekt gehört. Wenn Sie diese Methode aufrufen, füttern Sie "Schwertfisch" als Methodenparameter (Wortspiel beabsichtigt) an die Methode.

Wenn Sie Strings miteinander vergleichen, verwenden Sie die equals-Methode - nicht das doppelte Gleichheitszeichen.

Objekte in Java vergleichen - Dummies

Die Wahl des Herausgebers

Bearbeiten in Photoshop Elements 10 Schnellfoto-Bearbeitungsmodus - Schnuller

Bearbeiten in Photoshop Elements 10 Schnellfoto-Bearbeitungsmodus - Schnuller

Schneller Foto-Bearbeitungsmodus ist eine abgespeckte Version des Modus "Full Photo Edit", der einfach grundlegende Fixingtools bereitstellt und mit einigen einzigartigen Funktionen aufwartet, z. B. eine Vorher-Nachher-Vorschau Ihres Bildes. Hier ist ein Schritt-für-Schritt-Workflow, den Sie im Schnellfoto-Bearbeitungsmodus verwenden können, um Ihre Fotos zu reparieren:

Zum Optimieren von Photoshop Elements-Bildern mit Fotoeffekten - Dummies

Zum Optimieren von Photoshop Elements-Bildern mit Fotoeffekten - Dummies

Fotoeffekte in Photoshop Elements 11 funktionieren wie Anwenden von Filtern; Das Dialogfeld "Filtergalerie" bietet Ihnen zahlreiche Optionen zum Anwenden eines Filters. Das geführte Bedienfeld bietet Ihnen Filtereffekte und führt Sie dann durch die Schritte zum Anpassen von Helligkeitswerte, Ändern von Farbton und Sättigung und Durchführen weiterer Anpassungen zum Vervollkommnen des Ergebnisses. Sie ...

Eingeben des Absatztyps in Photoshop Elements 11 - Dummies

Eingeben des Absatztyps in Photoshop Elements 11 - Dummies

Absatztyp in Photoshop Elements 11 ist ähnlich zu dem Text, den Sie in ein Textverarbeitungsprogramm eingeben, mit der Ausnahme, dass er in einem Textfeld oder einem Begrenzungsrahmen enthalten ist. Wenn Sie größere Textabschnitte haben, die Sie in ein Bild eingeben möchten, ist die Eingabe des Textes als Absatztyp die praktischste Option. Während ...

Die Wahl des Herausgebers

PHP-Anweisungen - Dummys

PHP-Anweisungen - Dummys

PHP ist eine Skriptsprache, die speziell für die Verwendung im Internet entwickelt wurde. Es enthält Funktionen, die Sie bei der Programmierung der Aufgaben unterstützen, die für die Entwicklung dynamischer Webanwendungen erforderlich sind. Diese Tabelle gibt einen kurzen Überblick über einige der Anweisungen, die Sie häufig verwenden werden: Anweisung Beschreibung array ("key" => "value", ...); Casts a ...

PHP-Schablonen-Systeme - Schablonen-Systeme

PHP-Schablonen-Systeme - Schablonen-Systeme

Können die Menge an Arbeit reduzieren, die Sie für die Erstellung einer Website in PHP benötigen. Wenn Sie eine Website erstellen, verwenden Sie häufig das gleiche Layout für die gesamte Website. Sie haben eine obere Portion, vielleicht mit einem Menü; ein Hauptinhaltsbereich; und ein unterer Teil, vielleicht mit Links oder ...

Make MySQL Datenbank Änderungen mit den ALTER Query - Dummies

Make MySQL Datenbank Änderungen mit den ALTER Query - Dummies

Die ALTER Query wird verwendet, um die Struktur von eine MySQL-Datenbank. In dieser Liste wird die Syntax für die Änderungen angezeigt, die Sie wahrscheinlich vornehmen möchten: ADD-Spaltenbezeichnung ALTER-Spaltenname SET-DEFAULT-Wert ALTER-Spaltenname DROP DEFAULT CHANGE-Spaltenname newcolname-Definition DROP-Spaltenname MODIFY-Spaltenname RENAME newtablename

Die Wahl des Herausgebers

Hochgeschwindigkeitsdatencaching mit NoSQL - Dummies

Hochgeschwindigkeitsdatencaching mit NoSQL - Dummies

Mit NoSQL haben Sie Hochgeschwindigkeits-Caching. Stellen Sie sich vor, Sie sind Bankangestellte und arbeiten mit drei anderen Kollegen zusammen. Jeder hat eine Reihe von Leuten, die bedient werden sollen. Einer der Kunden bleibt jedoch in der Schlange, um zu fragen, ob sein Scheck bereits eingelöst und der Betrag seinem Konto gutgeschrieben wurde. Wenn Sie ...

Wie man Einsichten aus Big Data kommuniziert - Dummies

Wie man Einsichten aus Big Data kommuniziert - Dummies

Big Data kann helfen, Einblicke zu gewinnen. Unternehmen gewinnen Wettbewerbsvorteile, wenn die richtigen Informationen zur richtigen Zeit an die richtigen Leute geliefert werden. Dies bedeutet, Erkenntnisse und Informationen aus Daten zu extrahieren und sie Entscheidungsträgern auf eine Weise zu vermitteln, die sie leicht verstehen. Schließlich sind Menschen weniger wahrscheinlich zu handeln, wenn sie ...

Zookeeper und HBase Reliability - dummies

Zookeeper und HBase Reliability - dummies

Zookeeper ist ein verteiltes Cluster von Servern, das gemeinsam zuverlässige Koordinations- und Synchronisationsdienste für Cluster-Anwendungen bereitstellt. .. Zugegeben, der Name "Zookeeper" mag auf den ersten Blick eine seltsame Wahl sein, aber wenn Sie verstehen, was es für einen HBase-Cluster tut, können Sie die Logik dahinter sehen. Beim Erstellen und Debuggen von verteilten Anwendungen ...