Всегда ли объединение строк в Java приводит к созданию новых строк в памяти?

У меня есть длинная строка, которая не соответствует ширине экрана. Например.

String longString = "This string is very long. It does not fit the width of the screen. So you have to scroll horizontally to read the whole string. This is very inconvenient indeed.";

Чтобы было легче читать, я подумал написать так-

String longString = "This string is very long." + 
                    "It does not fit the width of the screen." +
                    "So you have to scroll horizontally" +
                    "to read the whole string." +
                    "This is very inconvenient indeed.";

Однако я понял, что второй способ использует конкатенацию строк и создаст 5 новых строк в памяти, и это может привести к снижению производительности. Так ли это? Или компилятор будет достаточно умен, чтобы понять, что все, что мне нужно, это на самом деле одна строка? Как я мог избежать этого?

24
задан CodeBlue 16 August 2012 в 14:23
поделиться