Сколько символов может содержать Java StringBuilder?
имеет ли StringBuilder ограничение символов для максимальной емкости в JAVA.
StringBuilder url=new StringBuilder();
stmt = connnection.createStatement();
String sql="SOME QUERY";
rs = stmt.executeQuery(sql);
while(rs.next())
{
String emailId=rs.getString("USER_EMAIL_ID");
url.append(emailId);
}
имеет ли переменная StringBuilder " url " максимальную емкость, или она может содержать все?
2 ответов
Да, он имеет ограничение в емкости максимального целого числа, которое 2147483647 (технически).
StringBuilder
внутренне удерживает chracters в char[]
объект, а массив имеет ограничение по размеру. подробнее об этом читайте в другой теме
если вы пройдете по этой ссылке, это может очистить тебя больше Объем Буфера Oracle Docs String Builder
теперь вы хотите объявить емкость любого класса StringBuilder, а затем один конструктор StringBuilder(int initCapacity)
определен для этого.
StringBuilder(int initCapacity)
: - создает пустой строитель строк с заданной начальной емкостью.
здесь из-за параметра as int
максимальная емкость, что a StringBuilder
класс может достичь будет 2147483647
.
существуют различные методы, касающиеся этого контекста емкости в StringBuilder
класс, эти методы также учитывают параметры типа int
.
пустота setLength (int newLength): - задает длину последовательности символов. Если newLength меньше length (), последние символы в последовательности символов усекаются. Если newLength больше length (), в конце символа добавляются нулевые символы последовательность.
недействительным ensureCapacity(тип int minCapacity) : - гарантирует, что емкость по крайней мере равна указанному минимуму.
эти методы также принимают аргумент как int
тип . Таким образом, используя эти методы или contructors вы сможете создать объект с максимальной емкостью 2147483647
.