Új hozzászólás Aktív témák
-
thon73
tag
egyik = textResult; egyik és textResult is ugyanarra a stringre mutat (legyen stringA)
egyik = Integer.toString(Integer.parseInt(egyik)); textResult változatlan, de egyik már a toString által létrehozott új stringre mutat. (Ami tartalmazhat azonos szöveget stringA-val) Ez legyen tehát stringB."egyik == textResult" az ugyanaz, mint stringA == stringB, vagyis soha nem lesz igaz. textResult.equals(egyik) megoldás segíthet, de miért nem számolsz inkább integerekkel az átalakítás után?
A masik=egyik; utasítás viszont a fenti ellentéte, hiszen ettől kezdve mind a kettő ugyanarra a stringA-ra mutat, tehát értékük egyenlő.
Java-ban ezt egy picit nehéz megérteni, mert el van rejtve. A C pl. sokkal jobban rákényszeríti az embert a címaritmetika elsajátítására.
A String alapvetően egy Objektum, amely valahol egy komplex adathalmaz a memóriában.
Pl. String string = "Én egy adathalmaz vagyok"; utasításban lesz a memóriában egy ilyen mondat.
Ezzel szemben a "változó", amivel azonosítjuk a stringet, valójában egy mutató, ami erre az adathalmazra mutat. String esetén az adathalmaz final, vagyis nem változtatható meg, de a string nevű mutató természetesen mutathat más halmazra, ha új értéket kap.
Te azt hasonlítod össze, hogy a két mutató ugyanoda mutat-e, ahelyett, hogy a két mutató által mutatott adatokat hasonlítanád össze.
Új hozzászólás Aktív témák
- Nvidia Quadro és AMD FirePro kártyák - számla, 6 hó gar.
- Samsung Galaxy A56 - 256 GB - szürke (290) Használt, 10000 Ft kiegészítő ajándék, Garancia
- Eladó SEASONIC Prime TX-1000 tápegység
- Új bontatlan Garmin Fenix 7S Pro 2év garancia
- Eladó Sapphire AMD Radeon RX 7900 XTX NITRO+ Vapor-X 24GB videókártya
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
