Добавление не печатаемые символы к строке в Java?

Строковое интернирование. Это - то, которое я не видел, подходят в этом обсуждении все же. Это немного неясно, но в определенных условиях это может быть полезно.

CLR сохраняет таблицу ссылок на литеральные строки (и программно интернированные строки). При использовании той же строки в нескольких местах в коде, это будет сохранено однажды в таблице. Это может упростить объем памяти, требуемый для выделения строк.

можно протестировать, если строка интернируется при помощи Строка. IsInterned (строка) и можно интернировать строку с помощью Строка. Интерн (строка) .

Примечание: CLR может содержать ссылку на интернированную строку после приложения или даже конца AppDomain. См. документацию MSDN для деталей.

6
задан starblue 22 July 2009 в 12:03
поделиться

3 ответа

public final class ProtocolConstants {
    public final char RECORD_SEPARATOR = 0x1e;
    public final char END_OF_TEXT = 0x03;

    private ProtocolConstants() {}
}

что-то вроде этого?

8
ответ дан 8 December 2019 в 17:25
поделиться

В строку Java можно добавлять любые символы. Но String , вероятно, не то, что вам нужно, если вы просто хотите передавать двоичные данные. Рассмотрите возможность использования байта [] или другого побайтно-ориентированного интерфейса.

1
ответ дан 8 December 2019 в 17:25
поделиться

Если хотите, вы можете записать их как литералы Unicode (в символы или строки):

final String endOfText = "\u0003";

Я предполагаю, что вам буквально не нужен ASCII для протокола на основе байтов (символы по-прежнему 16 бит).

5
ответ дан 8 December 2019 в 17:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: