Как работает оператор `+=` для строк в Java?

«Как работает оператор `+=` для строк в Java?» — вопрос из категории Java Core, который задают на 10% собеседований Java Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Оператор += для строк выполняет конкатенацию (объединение строк). Это эквивалентно a = a + d.

Пример:

String a = "Hello";
String d = " World";
a += d; // a = "Hello World"

Ключевые особенности:

  1. Неизменяемость строк: Поскольку строки в Java иммутабельны, операция создаёт новый объект String.
  2. Обработка null: Если второй операнд — null, он преобразуется в строку "null":
    String a = "Hello";
    String d = null;
    a += d; // a = "Hellonull"
  3. Под капотом: Компилятор преобразует a += d в a = new StringBuilder(a).append(d).toString() для эффективности.