Сколько объектов будет создать для следующей строки в куче:Сколько объектов мы создадим на куче?
String a = "abc";
String b = "def";
String c = "ghi";
String d = a+b+c
Сколько объектов создаются в куче?
Сколько объектов будет создать для следующей строки в куче:Сколько объектов мы создадим на куче?
String a = "abc";
String b = "def";
String c = "ghi";
String d = a+b+c
Сколько объектов создаются в куче?
String a = "abc"; //String literal
String b = "def"; //String literal
String c = "ghi"; //String literal
String d = a+b+c //String d = new StringBuilder(d).append(b).append(c).toString();
Обратите внимание, что StringBuilder#append
возвращает объект . Теперь вам легко определить, сколько объектов было создано ..
Также обратите внимание, что toString
не создает новую строку, она возвращает уже созданную.
Использует ли 'new StringBuilder()' count as object? – joshreesjones
@ mathguy54 Да. – Maroun
Таким образом, объекты будут 'a',' b', 'c', анонимным' StringBuilder' и 'd'? – joshreesjones
Невозможно узнать. Может быть 0 или 1 – Ingo
Возможный дубликат http://stackoverflow.com/questions/7370593/how-many-string-objects-will-be-created – Developer
Два, если вы не подсчитаете внутренние объекты в экземпляре StringBuilder. –