Модель памяти в Java
Строки
Интернирование
String s1 = "Hello, World";
String s2 = "test";
System.out.println("Comparing s1 and s2");
System.out.println(s1 == s2);
System.out.println(s1.equals(s2));
System.out.println("Comparing s1 and s3");
String s3 = new String(s1);
System.out.println(s1 == s3);
System.out.println(s1.equals(s3));
System.out.println("Interning s1 and s3");
System.out.println(s1 == s3.intern());
System.out.println("Comparing concatenated strings");
String s4 = s1+"!";
System.out.println(s4 == s1+"!");
System.out.println(s4 == (s1+"!").intern());
System.out.println(s4.intern() == (s1+"!").intern());
System.out.println(s4.equals(s1+"!"));
Полезные ссылки
- String pooling - http://java-performance.info/string-intern-in-java-6-7-8/
StringBuilder и StringBuffer
Числа
Материалы
Презентация: Типы данных в Java
Полезные ссылки
- String pooling - http://java-performance.info/string-intern-in-java-6-7-8/