Junior — Middle
Explicați conceptul de pool de șiruri în Java și scopul său.
sobes.tech AI
Răspuns de la AI
Pool-ul de șiruri (String Pool) în Java este un loc special în memorie unde sunt stocate literalurile de șiruri unice. Când creezi un șir ca literal, JVM îl plasează în pool-ul de șiruri pentru a evita duplicarea aceluiași șir și pentru a economisi memorie.
De exemplu, dacă în cod există două șiruri cu aceeași valoare, ambele vor face referire la același obiect din pool, în loc să creeze două obiecte separate.
Exemplu:
String s1 = "salut";
String s2 = "salut";
System.out.println(s1 == s2); // true, ambele referințe indică același obiect din pool
String s3 = new String("salut");
System.out.println(s1 == s3); // false, s3 este un obiect nou în afara pool-ului
Scopul pool-ului de șiruri este de a îmbunătăți performanța și de a reduce consumul de memorie prin reutilizarea șirurilor imutabile.