Junior — Middle
Vysvetlite koncept poolu reťazcov v Jave a jeho účel.
sobes.tech AI
Odpoveď od AI
V Java je String Pool špeciálne miesto v pamäti, kde sa ukladajú unikátne literály reťazcov. Keď vytvoríte reťazec ako literál, JVM ho umiestni do String Pool, aby sa zabránilo duplikácii rovnakých reťazcov a ušetrila sa pamäť.
Napríklad, ak v kóde sú dva reťazce s rovnakou hodnotou, oba budú odkazovať na ten istý objekt v pool, namiesto vytvárania dvoch samostatných objektov.
Príklad:
String s1 = "ahoj";
String s2 = "ahoj";
System.out.println(s1 == s2); // true, obe referencie ukazujú na ten istý objekt v pool
String s3 = new String("ahoj");
System.out.println(s1 == s3); // false, s3 je nový objekt mimo pool
Cieľom String Poolu je zlepšiť výkon a znížiť spotrebu pamäti opakovaným používaním nemenných reťazcov.