StringBuffer и StringBuilder
Вы знаете, что каждый раз, когда вы изменяете строку, на самом деле, создаётся новая строка? Это приводит к небольшим проблем с оптимизацией.
Если так получается, что строка часто меняется, то используйте StringBuilder. Если вам нужна многопоточная версия — StringBuffer.
Он помогает справиться с созданием временного мусора из-за модификаций объекта String.
#java #lesson #string
Вы знаете, что каждый раз, когда вы изменяете строку, на самом деле, создаётся новая строка? Это приводит к небольшим проблем с оптимизацией.
Если так получается, что строка часто меняется, то используйте StringBuilder. Если вам нужна многопоточная версия — StringBuffer.
Он помогает справиться с созданием временного мусора из-за модификаций объекта String.
#java #lesson #string
Оптимизация строк
При конкатенации строк на Java с помощью оператора +, например, в цикле for, каждый раз создается новый объект String, что приводит к потере памяти и увеличению времени работы программы.
Также следует избегать создания Java строки с помощью конструктора класса: (смотри на фото)
#lesson #string
При конкатенации строк на Java с помощью оператора +, например, в цикле for, каждый раз создается новый объект String, что приводит к потере памяти и увеличению времени работы программы.
Также следует избегать создания Java строки с помощью конструктора класса: (смотри на фото)
#lesson #string
Одинарные и двойные кавычки
Что вы ожидаете получить от этого кода?
Казалось бы, должна вернуться строка
Двойные кавычки обрабатывают символы как строки, но одинарные ведут себя иначе. Они преобразуют символьные операнды (
#lesson #string
Что вы ожидаете получить от этого кода?
public class Haha {
public static void main(String args[]) {
System.out.print("H" + "a");
System.out.print('H' + 'a');
}
}
Казалось бы, должна вернуться строка
HaHa
, но на деле будет Ha169
.Двойные кавычки обрабатывают символы как строки, но одинарные ведут себя иначе. Они преобразуют символьные операнды (
'H'
и 'a'
) к целочисленным значениям через расширение примитивных типов – получается 169
.#lesson #string
Одинарные и двойные кавычки
Что вы ожидаете получить от этого кода?
Казалось бы, должна вернуться строка HaHa, но на деле будет Ha169.
Двойные кавычки обрабатывают символы как строки, но одинарные ведут себя иначе. Они преобразуют символьные операнды ('H' и 'a') к целочисленным значениям через расширение примитивных типов – получается 169.
#lesson #string
Что вы ожидаете получить от этого кода?
public class Haha {
public static void main(String args[]) {
System.out.print("H" + "a");
System.out.print('H' + 'a');
}
}
Казалось бы, должна вернуться строка HaHa, но на деле будет Ha169.
Двойные кавычки обрабатывают символы как строки, но одинарные ведут себя иначе. Они преобразуют символьные операнды ('H' и 'a') к целочисленным значениям через расширение примитивных типов – получается 169.
#lesson #string
StringBuffer и StringBuilder
Вы знаете, что каждый раз, когда вы изменяете строку, на самом деле, создаётся новая строка? Это приводит к небольшим проблем с оптимизацией.
Если так получается, что строка часто меняется, то используйте StringBuilder. Если вам нужна многопоточная версия — StringBuffer.
Он помогает справиться с созданием временного мусора из-за модификаций объекта String.
#java #lesson #string
Вы знаете, что каждый раз, когда вы изменяете строку, на самом деле, создаётся новая строка? Это приводит к небольшим проблем с оптимизацией.
Если так получается, что строка часто меняется, то используйте StringBuilder. Если вам нужна многопоточная версия — StringBuffer.
Он помогает справиться с созданием временного мусора из-за модификаций объекта String.
#java #lesson #string