Video: Geography Now! Indonesia 2025
Når du begynner å jobbe med objekter i Java, finner du at du kan bruke == og! = å sammenligne objekter med hverandre For eksempel, en knapp som du ser på skjermen er et objekt. Du kan spørre om tingen som bare ble museklikket, er en bestemt knapp på skjermen. Du gjør dette med Javas likestillingsoperatør.
hvis (e. GetSource () == bCopy) {utklippstavle. setText (som. getText ());
Den store gotchaen med Javas sammenligningsskjema kommer når du sammenligner to strenger. Når du sammenligner to strenger med hverandre, vil du ikke bruke det dobbelte likestedet. Ved å bruke det dobbelte like tegnet vil du spørre: "Er denne strengen lagret på nøyaktig samme sted i minnet som den andre strengen? "Vanligvis er det ikke det du vil spørre.
I stedet vil du vanligvis spørre, "Har denne strengen de samme tegnene i den som den andre strengen? "For å spørre det andre spørsmålet (det mer aktuelle spørsmålet) Java's String-typen har en metode som heter likeverdige. (Som alt annet i det kjente universet, er denne likeverdige metoden definert i Java API, kort for Application Programming Interface.)
Likestillingen sammenligner to strenger for å se om de har de samme tegnene i dem. For et eksempel ved hjelp av Java-likemetoden, se denne kodelisten. (Figuren viser en runde av programmet i oppføringen.)
importer statisk java. Lang. System. *; importer java. util. Scanner; offentlig klasse CheckPassword {public static void main (String args []) {ut. skriv ut ("Hva er passordet?"); Skannertastatur = Ny skanner (inn); String passord = tastatur. neste (); ute. println ("Du skrev >>" + passord + "<<"); ute. println (); hvis (passord == "Sverdfiskbiter") {ut. println ("Ordet du skrev inn er lagret"); ute. println ("på samme sted som det ekte"); ute. println ("passord. Du må være en"); ute. println ("hacker.");} else {out. println ("Ordet du skrev ikke er"); ute. println ("lagret på samme sted som"); ute. println ("det ekte passordet, men det er"); ute. println ("no big deal.");} ut. println (); hvis (passordet er lik ("Sverdfiskbiter")) {ut. println ("Ordet du skrev har"); ute. println ("samme tegn som ekte"); ute. println ("passord. Du kan bruke vår"); ute. println ("dyrebare system");} else {out. println ("Ordet du skrev ikke"); ute. println ("har de samme tegnene som"); ute. println ("det virkelige passordet. Du kan ikke"); ute. println ("bruk vårt dyrebare system.");} tastatur. Lukk ();}}
I oppføringen, kalles tastaturet. neste () tar tak i hvilket ord brukeren skriver på datamaskinens tastatur. Koden skyver dette ordet i variabelen kalt passord. Så hvis programene bruker setninger, bruker du to forskjellige teknikker for å sammenligne passord med "Sverdfiskbiter".
Eksemplene i den trykte boken er for det meste tekstbaserte, men du kan finne mer avanserte versjoner av de fleste eksempler på Dummies nettside. Disse finere versjonene har vinduer, knapper, tekstfelt og andre elementer i et typisk grafisk brukergrensesnitt (GUI).
Jo mer hensiktsmessig av de to teknikkene bruker Java's equal metode. Likestillingsmetoden ser morsom ut, fordi når du ringer det, legger du en prikk etter en streng og legger den andre strengen i parentes. Men det er måten du må gjøre det på.
Når du ringer til Java's equal metode, spiller det ingen rolle hvilken streng som får prikken og som får parentesene. For eksempel, i noteringen, kan du ha skrevet
hvis ("Sverdfiskbiter". Er lik (passord))
Metoden vil fungere like bra.
En samtale til Javas likemetode ser ubalansert ut, men det er det ikke. Det er en grunn bak den tilsynelatende ubalansen mellom punkt og parentes. Tanken er at du har to objekter: Passordobjektet og "Sverdfiskbiter" -objektet.
Hver av disse to objektene er av typen String. (Passordet er imidlertid en variabel av typen String, og "Sverdfiskbiter" er en String bokstavelig.) Når du skriver passord. tilsvarer ("Sverdfiskbiter"), kaller du en lik metode som tilhører passordobjektet. Når du kaller den metoden, mates du "Sverdfiskbiter" til metoden som metodens parameter (ordspill beregnet).
Når du sammenligner strenger med hverandre, bruk likestillingsmetoden - ikke det dobbelte likestegnet.
