Java

String pool & immutability

Në shqip: Pishina e String-ëve

ShpjegimiSQ

String-ët në Java s'ndryshojnë kurrë — çdo „ndryshim“ krijon një String të ri. Tekstet e shkruara direkt në kod ruhen një herë në „string pool“ dhe ndahen. Prandaj == ndonjëherë „funksionon“ rastësisht — por përdor gjithmonë equals().

EnglishEN

Strings in Java never change — every “change” creates a new String. Text written directly in code is stored once in the “string pool” and shared. That's why == sometimes “works” by accident — but always use equals().

Si ta mendosh

Si librat e bibliotekës: të gjithë lexojnë të njëjtin kopje, askush s'shkruan mbi të.

Lexoje në anglisht

Like library books: everyone reads the same copy, nobody writes in it.

Shembull kodijava

String a = "Arta";
String b = "Arta";
String c = new String("Arta");
System.out.println(a == b);       // true (pool)
System.out.println(a == c);       // false — përdor equals!

Terma të lidhur