Search
Write a publication
Pull to refresh

Строковый параметр String и методы работы с ним

Данный пост является описанием методов работы с параметром String в Android. Поводом для написания поста явилось отсутствие описания методов на русском языке. И так как я начинающий программист, то для меня эта информация актуальна. А раз это понадобилось мне в изучении, значит возможно кому-то это тоже потребуется. В таблице приведены примеры — результат работы методов. Такой подход видел в одном из постов, и считаю это очень правильным. В целом пост является переводом раздела с официального сайта по ос Android.

String


Строковый параметр, последовательность символов \ код единицы. Представляет массив значений UTF-16.

Wikipedia

UTF-16 (англ. Unicode Transformation Format) в информатике — один из способов кодирования символов из Unicode в виде последовательности 16-битных слов. Данная кодировка позволяет записывать символы Юникода в диапазонах U+0000..U+D7FF и U+E000..U+10FFFF (всего 1 112 064 штук). При этом каждый символ записывается одним или двумя словами (суррогатная пара).

Вот некоторые Конструкторы

String () — создает пустой String;
String (byte[] data) – Преобразует массив в строку, используя default charset.
String(String toCopy) — Создает новую строку с тем же последовательность символов toCopy ( копирует строку toCopy );
String(StringBuffer stringBuffer) — создает новый String из содержимого указанного stringBuffer;
String(StringBuilder stringBuilder) — создает новый String из содержимого указанного stringBuilder;

Методы

charAt ( int index ) — Возвращает символ с указанным смещением в этой строке;
codePointAt ( int index ) — Возвращает Unicode символ в данном index;
codePointBefore ( int index ) — Возвращает Unicode символ, который предшествует данному index.;
codePointCount ( int start, int end ) — Вычисляет количество символов между позициями start и end;
compareTo ( String string ) — Сравнивает указанную строку, используя значения символов Unicode;
compareToIgnoreCase ( String string ) — Сравнивает указанную строку, используя значения символов Unicode, без учета регистра;
concat ( String string ) — Объединяет строку с указанной строкой;
contains ( CharSequence cs ) — Определяет, содержит ли строка последовательность символов в CharSequence;
contentEquals ( CharSequence cs ) — Сравнивает CharSequence с этой строкой;
contentEquals ( StringBuffer strbuf ) — Сравнивает StringBuffer с этой строкой;
copyValueOf ( char[] data, int start, int length ) — Создает новую строку, содержащую указанные символы из массива Data начиная с позиции start (нумерация начинается с нуля) длинной length.
equals ( Object object) — Сравнивает указанный объект и строку и возвращает true, если они равны.
format ( Locale locale, String format, Object… args ) — Возвращает отформатированную строку, используя прилагаемый формат и аргументы, локализованных в данной местности. Например дату или время;
hashCode() — Возвращает целое число — хэш-код для данного объекта;
indexOf ( int c ) — возвращает номер первой встречной позиции с указанным индексом с;
indexOf ( int c, int start ) — ищет индекс с, начиная с позиции start;
indexOf ( String subString, int start ) — ищет цепочку символов subString начиная с позиции start;
intern() — так сказать «хэширует» строку; (статья пользователя viaTor более подробно раскрывает значение данного метода)
lastIndexOf ( аналогично indexOf ) — возвращает номер последней встречной позиции с указанным индексом.
matches ( String regularExpression ) — проверяет, соответствует ли строка регулярным выражениям;
offsetByCodePoints ( int index, int codePointOffset ) — Возвращает позицию, расположенную на расстоянии codePointOffset после начальной позиции, заданной параметром index;
replace ( CharSequence target, CharSequence replacement ) — ….
replace ( char target, char replacement ) — Меняет символ\последовательность target на replacement;
replaceFirst ( String regularExpression, String replacement ) — …
replaceAll ( String regularExpression, String replacement ) — меняет первое \ все регулярные выражения на строку replacement;
split ( String regularExpression ) — …
split ( String regularExpression, int limit ) — делит строку на регулярные выражения. Возможно указания максимального числа деления limit;
startsWith ( String prefix ) — …
startsWith ( String prefix, int start ) — проверяет, начинается ли строка символами prefix с начала строки \ с указанного символа;
endsWith ( String suffix ) — проверяет, заканчивается ли строка символами suffix.
subSequence ( int start, int end ) — …
substring ( int start ) — …
substring ( int start, int end ) — создает новую последовательность \ строку с символами из данной строки начиная с позиции start до конца строки \ заканчивая символом с позиции end;
toCharArray() — копирует символы в этой строке в массив символов;
toString () — возвращает строку;
toLowerCase(Locale locale) — …
toLowerCase( ) — преобразует строку в нижний регистр, используя правила locale / правила по умолчанию (user's default locale );
toUpperCase ( Locale locale ) — …
toUpperCase() — преобразует данную строку в верхний регистр, используя правила locale / правила по умолчанию (user's default locale );
trim() — удаления пробелов в начале и в конце строки;
valueOf ( int, long, char и т.д.) — конвертирует содержимое в строку
( в читабельный формат );

Так же при разработке стоит учитывать возможные ошибки


NullPointerException — возникает если элемент на который ссылается выражение отсутствует, например: public String (StringBuilder stringBuilder) если stringBuilder == null.
IndexOutOfBoundsException — возникает если выражение обращается к элементу в строке, которого нет, например, строка 5 символов, а вы обращаетесь к 6 -му. index < 0 или index >= length();
IllegalArgumentException — возникает, когда любой из элементов codePoints не соответствует Unicode;
IllegalFormatException — возникает если format является недействительным;
UnsupportedEncodingException — возникает если кодировка не поддерживается;

Таблица наглядно демонстрирует что и какой метод делает.
image
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.