За исключением максимальной длины, какие ограничения имеет строка в Java? - PullRequest
2 голосов
/ 05 октября 2011

За исключением максимальной длины, какие ограничения имеет строка в Java?

Есть вещи, которые я не могу положить в одну? Персонажи, которых они не примут?

Любой был бы отличным помощником:)

Ответы [ 3 ]

3 голосов
/ 05 октября 2011

Строки Java могут содержать любые данные, которые вам нравятся, это двоичные строки. Однако некоторые функции могут не работать с неверно сформированными строками (например, содержащими \ x00), в зависимости от указанной кодировки символов. Вы можете (вероятно) полагаться на стандартные методы для работы, но имейте в виду, что, вставляя «плохие» символы, вы злоупотребляете типом и можете нарушать чужой код.

2 голосов
/ 05 октября 2011

В зависимости от вашего сценария использования: Java использует UTF-16 для представления String, что означает, что строки в Java могут использовать больше памяти, чем UTF-8 / ASCII / ISO-XXXXX.

0 голосов
/ 05 октября 2011

Я не уверен, но, возможно, есть ограничение на длину строки Integer.MAX_VALUE

public final class String
  111     implements java.io.Serializable, Comparable<String>, CharSequence
  112 {
  113     /** The value is used for character storage. */
  114     private final char value[];

String.java

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...