- Az ASUS legfrissebb analóg billentyűzete az ízületeinket is kímélni szeretné
- A Team Group SSD-je gondoskodik arról, hogy az utolsó bitig letörölhető legyen
- Maximum 320 Hz-et képes magából kipréselni a Philips dual mode-os monitora
- A TSMC gyárthatja a Nova Lake legfontosabb komponensét
- Majdnem mindenki a TSMC 2 nm-es node-jára vágyik, de van egy nagy probléma vele
- Az ASUS legfrissebb analóg billentyűzete az ízületeinket is kímélni szeretné
- OLED monitor topik
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- HiFi műszaki szemmel - sztereó hangrendszerek
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- AMD Navi Radeon™ RX 9xxx sorozat
- AMD GPU-k jövője - amit tudni vélünk
- Kormányok / autós szimulátorok topikja
- Milyen billentyűzetet vegyek?
Új hozzászólás Aktív témák
-
disy68
aktív tag
válasz
Csaby25 #10908 üzenetére
Írnak többmindent is, de ez a válasz, ahol a generált kódot megnézte a válaszoló.
A String osztály java alatt immutable, azaz értékadás után az objektum értéke nem változtatható. E miatt a String összefűzés
String concat = "first" + " " + "last";
4 String objektum létrejöttét jelentené.Erre rakták bele java 8 óta a fordítóba, hogy ahol ilyen található, azt optimalizálja. A String összefűzéseket helyettesíti StringBuilder-rel, ezért nem fog létrejönni annyi String objektum.
Vannak még egyéb String-ekkel kapcsolatos optimalizációk, amiket a fordító/futtató környezet csinál/alkalmaz, pl. a válaszokban említett internal pool, ahol kvázi cache-elve vannak String objektum példányok, java 8-as updattel jött a G1 GC-be, hogy tud deduplikálni String-eket. Java 9-ben pedig jött egy olyan, hogy azokat a szövegeket, amiket lehet, ISO-8859-1/Latin-1 kódolással tárolja a JVM UTF-16 helyett (1 vs 2 byte/karakter).
>javap -c Test Compiled from "Test.java" public java.lang.String makinStrings(); Code: 0: ldc #5; //String Fred 2: astore_1 3: new #6; //class java/lang/StringBuilder 6: dup 7: invokespecial #7; //Method java/lang/StringBuilder."<init>":()V 10: aload_1 11: invokevirtual #8; //Method java/lang/StringBuilder.append: (Ljava/lang/String;)Ljava/lang/StringBuilder; 14: ldc #9; //String 47 16: invokevirtual #8; //Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; 19: invokevirtual #10; //Method java/lang/StringBuilder.toString:()Ljava/lang/String; 22: astore_1 23: aload_1 24: iconst_2 25: iconst_5 26: invokevirtual #11; //Method java/lang/String.substring:(II)Ljava/lang/String; 29: astore_1 30: aload_1 31: invokevirtual #12; //Method java/lang/String.toUpperCase:()Ljava/lang/String; 34: astore_1 35: aload_1 36: invokevirtual #13; //Method java/lang/String.toString:()Ljava/lang/String; 39: areturn
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Az ASUS legfrissebb analóg billentyűzete az ízületeinket is kímélni szeretné
- Villanyszerelés
- Gitáros topic
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- OLED monitor topik
- Hálózati / IP kamera
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- Windows Insider Program
- Autós topik
- CURVE - "All your cards in one." Minden bankkártyád egyben.
- További aktív témák...
- AMD Ryzen 7 5800X 8 mag / 16 szál / Beszámítás OK!
- Gigabyte B760M Gaming DDR4 / 30 hónap Alza.hu garancia / Beszámítás OK!
- Telefon szervízhez szükséges szerszámok
- hibás WerMamba Phantom roller +ajándékkal! (kivehető akkus, tárcsafékes)
- Lenovo Gamer Laptop: Ideapad Gaming 3 (i5 12500H, RTX3050, 32GB RAM)
- Xiaomi Redmi Note 13 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone SE 2020 64GB, Kártyafüggetlen, 1 Év Garanciával
- HUAWEI MateBook 13 2020 - Kijelző nélkül - I7-10510U - 16GB - 512GB SSD - Win11 - MAGYAR
- BESZÁMÍTÁS! Gigabyte AORUS MASTER RX 6800 XT 16GB GDDR6 videokártya garanciával hibátlan működéssel
- ÚJ Apple Macbook Air 15,3 M4 10C CPU/10C GPU/16GB/256GB - Ezüst -(2025) - 3 év gari - MAGYAR
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest