Logo ru.boatexistence.com

Почему конкатенация строк - это плохо?

Оглавление:

Почему конкатенация строк - это плохо?
Почему конкатенация строк - это плохо?

Видео: Почему конкатенация строк - это плохо?

Видео: Почему конкатенация строк - это плохо?
Видео: Конкатенация строк что это. Объединение строк.Тип данных string c++ что это. Урок #64 2024, Май
Anonim

Это «конкатенация строк», и это плохая практика: … Некоторые могут сказать, что это медленно, в основном потому, что части результирующей строки копируются несколько раз Действительно, при каждом операторе + класс String выделяет в памяти новый блок и копирует в него все, что у него есть; плюс объединяемый суффикс.

Является ли конкатенация строк неэффективной?

Конкатенация не так уж неэффективна, потому что современные компиляторы заменяют ее эффективной реализацией, основанной на StringBuilder (вы увидите это, если посмотрите на байт-код classfile).

Почему конкатенация строк стоит дорого?

Это было дорого. Давайте сначала разберемся, почему это дорого. В Java строковые объекты являются неизменяемыми, что означает, что после их создания вы не можете их изменить. Итак, когда мы объединяем одну строку с другой, создается новая строка, а старая помечается для сборщика мусора.

В чем опасность использования конкатенации строк в SQL-запросе?

1 Ответ

  1. Производительность: При использовании подготовленного оператора синтаксис запроса должен быть проанализирован только один раз, а путь доступа должен быть рассчитан только один раз для каждого отдельного типа запроса. …
  2. Безопасность: использование конкатенации строк с данными, предоставленными пользователем, всегда подвержено атакам с внедрением SQL.

Медленна ли конкатенация строк в Python?

Такое поведение не должно вас удивлять: строковые объекты Python неизменяемы, поэтому при каждой конкатенации генерируется новая строка, а не модифицируется уже существующая. Также неудивительно, что объединение нескольких строк считается медленным.

Рекомендуемые: