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

6 Июл
2012

Данный пост является описанием методов работы с параметром 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
По материалам Хабрахабр.



загрузка...

Комментарии:

Наверх