Hirdetés
- Xiaomi 15T Pro - a téma nincs lezárva
- Megérkezett a Google Pixel 7 és 7 Pro
- Poco F8 Pro – titkos favorit lehet belőle
- Nothing Phone (3a) és (3a) Pro - az ügyes meg sasszemű
- Vége lehet a OnePlusnak? Állítólag az Oppo bezárná a márkát
- Xiaomi 14T - nem baj, hogy nem Pro
- Kicsinálja az S26 Ultra a fóliagyártókat
- Google Pixel topik
- Android alkalmazások - szoftver kibeszélő topik
- Hivatalos a OnePlus 13 startdátuma
Új hozzászólás Aktív témák
-
modder
aktív tag
válasz
MrSealRD
#4239
üzenetére
Esküszöm, nem értem, mit akarsz mondani Superhun válaszára.
De pár tény:
1) A JVM k*rva okos és tele van optimalizációval. Memória allokációnak alig van költsége, persze sok kis objektum lassíthatja a GC-t. Megoldás: arra az objektumra ne veszítsük el a referenciát, amit újra fogunk használni. Ennek megkönnyítésére szoktak memory poolokat implementálni Javában úgy, ahogy C++-ban is. De ezeket elég speckó esetekben szokták használni, amikor a sebesség van mindenek felett.
2) literálokra referencia mindig ugyanarra a memóriaterületre mutat. for() { String s = "nyorr"; } nem fog új objektumot létrehozni minden egyes iterációban
3) Olyan mikro-optimalizációról beszélünk, aminél egy adatbázis lekérdezés nagyságrendekkel lassabb: semmi értelme gondolkodni rajtaCiklusban String összefűzést StringBuilderrel, mert azt a compiler tudtommal nem ismeri fel, ellenben a "egy" + "ketto" + $valami.toString; kóddal, amit StringBuilderre cserél (vagy StringBuffer, most hirtelen nem emlékszem, melyik a thread-safe)
Nem látom értelmét String helyett StringBufferben tárolni a stringet.
Szerk.:
Közben rájöttem, mit akartál mondani, de elég veszélyes. Ha Stringbuilderben tárolod a stringeket, akkor a StringBuilder mutable, és olyan helyen is megváltoztathatod a String értékét, ahol nem akarod. pl.:StringBuilder strTime = getTimeInString();
page1.setLastVisited(strTime);majd később:
StringBuilder strTime = getTimeInString();
page2.setLastVisited(strTime);no shit, lastVisited szintén frissült page1-re, mert ugyanaz az objektum. Nem hiába találták ki, hogy a String immutable.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Formula-1
- SSD kibeszélő
- Milyen egeret válasszak?
- Hobby elektronika
- Xiaomi 15T Pro - a téma nincs lezárva
- Elemlámpa, zseblámpa
- Megérkezett a Google Pixel 7 és 7 Pro
- Poco F8 Pro – titkos favorit lehet belőle
- Hosszú premier előzetest kapott az Arknights: Endfield
- Vezetékes FEJhallgatók
- További aktív témák...
- Lenovo IdeaPad Slim 3 15IAN8 Notebook
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Prémium PC házak akár 20-40% kedvezménnyel eladók garanciával, számlával! Upd. 01.23
- Lenovo T14S Thinkpad FHD IPS i5-1135G7 16GB RAM 256GB SSD Intel Iris XE Graphics Win11 Pro Garancia
- ÁRCSÖKKENTÉS Intel Core i5 3470 confidential Ivy bridge Quad Core
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


