Создает ли String s = "некоторый текст" символ []?
Это не создает никаких объектов.
Я заметил, что есть сотни String s = new String ("некоторый текст") без видимой причины. Это виновник?
Это создает копию String и, возможно, char [] (два объекта). Копия выполняется только в том случае, если строка представляет подстроку другой строки.
Я хотел бы убедиться, что у вас есть версия Java, которая поддерживает -XX:+UseCompressedStrings
. Она включена по умолчанию в более поздних версиях Java и позволяет JVM использовать byte[]
вместо char[]
, что может быть вдвое меньше.
Однако 400 МБ не так уж велики в наши дни, и покупка большего объема памяти может быть самым простым решением. Вы можете получить 16 ГБ всего за 120 долларов.