Hirdetés
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- MasterDeeJay: Harc a DDR5 árak ellen
- gerner1
- Parci: Milyen mosógépet vegyek?
- Elektromos rásegítésű kerékpárok
- Brogyi: CTEK akkumulátor töltő és másolatai
Ú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?:))
- Tudjuk, de nem tesszük: a magyarok többsége nem törődik adatai védelmével
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- exHWSW - Értünk mindenhez IS
- Microsoft Excel topic
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Háztartási gépek
- Milyen routert?
- sziku69: Fűzzük össze a szavakat :)
- Assetto Corsa Rally
- sziku69: Szólánc.
- További aktív témák...
- HP OMEN - 16.1" FHD IPS 144HZ / i7-11800H / 16GB / 1Tb PCIe 4.0 / RTX 3060 6Gb
- Dell Precision 3571 4G LTE i7-12700H 32GB 1000GB FHD RTX A1000 4GB 1 év teljeskörű garancia
- Fujitsu LIFEBOOK E449 i3-8130U 12GB 512GB 14" FHD 1 év garancia
- Karácsonyi akció! HP ZBook Firefly 14 i7-1165G7 16GB 1000GB Nvidia Quadro T500 4GB 14" FHD 1 év gar
- ÚJ AKKU! Ár/ÉRTÉK BAJNOK! Dell Latitude 5330 i3-1215U 6mag! 16GB 512GB 13.3" FHD 1 év gar
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Referencia Weboldallal Világítós bill+laptop bill magyarítás. Rania 3M -is! Touchpadok is.Posta ok
- Gamer PC-Számítógép! Csere-Beszámítás! I7 10700 / 32GB DDR4 / RX 6700XT 12GB / 512 SSD + 1TB HDD
- BESZÁMÍTÁS! MSI B450M R5 5600X 32GB DDR4 1TB SSD RTX 4060Ti 16GB GameMax Aero Mini ECO ADATA 650W
- ÁRGARANCIA! Épített KomPhone i5 12400F 16/32/64GB RAM RTX 5060 8GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: ATW Internet Kft.
Város: Budapest

