Java.SE.03. Класс String презентация

Содержание


Презентации» Информатика» Java.SE.03. Класс String
Information handlingСодержание
 Класс String
 Классы StringBuilder, StringBuffer
 Форматирование строк. Класс Formatter
 Интернационализация
КЛАСС sTRINGКласс String
 Строка – объект класса String. 
 Строка является неизменяемойКласс String
 Ссылка типа String на строку-константу: 
  
 
Класс String
 Некоторые конструкторы класса String.Класс String
 Примеры создание строкКласс String
 Интерфейс CharSequence реализуют классы String, StringBuilder, StringBuffer. Методы интерфейсаКласс String
 Методы чтения символов из строки:
 char charAt(int index) –Класс String
 int	codePointBefore(int index) – возвращает кодовую точку для позиции вКласс String
 byte[]	getBytes(Charset charset) - возвращает строку в виде последовательности байт,Класс String
 Методы сравнения строк:
 boolean equals(Object obj) - проверяет идентичнаКласс String
 compareToIgnoreCase(String str) - лексиграфическое сравнение строк без учета регистраКласс String
 Работа с символами строки:
 String toUpperCase() - преобразует строкуКласс String. Example 1
 Объединение строк: 
 String concat(String str) Класс String
 Поиск символов и подстрок
 int indexOf(int ch) - поискКласс String
 int lastIndexOf(int ch, int fromIndex) - поиск последнего вхожденияКласс String
 boolean contains(CharSequence cs) - проверяет, входит ли указанная последовательностьКласс String
 boolean endsWith(String suffix) - заканчивается ли String суффиксом suffix;
Класс String
 Извлечение подстрок
 String trim() – отсекает на концах строкиКласс String
 Приведение значений элементарных типов и объектов к строке
 StringКласс String
 static String valueOf(boolean b) -.возвращает строку “true” или “false”,Класс String
 Форматирование строк
 static String format(String format, Object... args)
 staticКласс String
 Сопоставление с образцом
 boolean regionMatches(boolean ignoreCase, int toffset, StringКласс String
 String replace(CharSequence target, CharSequence replacement) -   Класс String
 String[] split(String regexStr) - разбивает строку на части, границамиКласс String. Example 2
 Результат:Класс String. Example 3
 Результат:Класс String. Example 4
 Результат:Классы stringbuilder, stringbufferКлассы StringBuilder, StringBuffer
 Классы StringBuilder и StringBuffer по своему предназначению близкиКлассы StringBuilder, StringBuffer
 Конструкторы класса StringBuilder
 StringBuilder(String str) – создает StringBuilder,Классы StringBuilder, StringBuffer
 Чтение и изменение символов объекта StringBuilder
 int length()Классы StringBuilder, StringBuffer
 ОТЛИЧИЕ объектов класса String от объектов классов StringBuilder,Классы StringBuilder, StringBuffer
 Добавление символов в объект класса StringBuilder. Добавляет аргументКлассы StringBuilder, StringBuffer
 Добавление символов в объект класса StringBuilder (продолжение).
 StringBuilderКлассы StringBuilder, StringBuffer
 Вставка символов в объект StringBuilder. Вставляет второй аргументКлассы StringBuilder, StringBuffer
 Вставка символов в объект StringBuilder (продолжение).
 StringBuilder insert(intКлассы StringBuilder, StringBuffer
 Удаление символов из объекта StringBuilder.
 StringBuilder deleteCharAt(int index)Классы StringBuilder, StringBuffer
 Управление ёмкостью.
 int capacity() – возвращает текущую емкость.
Классы StringBuilder, StringBuffer
 В классе присутствуют также методы, аналогичные методам классаКлассы StringBuilder, StringBuffer. Example 5
 Результат:Классы StringBuilder, StringBuffer. Example 6
 Результат:Классы StringBuilder, StringBuffer. Example 7
 Результат:Форматирование строк. Класс formatterФорматирование строк. Класс Formatter
 Класс Formatter (пакет java.util) - обеспечивает преобразованиеФорматирование строк. Класс Formatter
 Для классов PrintStream и PrintWriter добавлен методФорматирование строк. Класс Formatter
 Спецификаторы формата. Общий синтаксис спецификатора формата следующий:
Форматирование строк. Класс FormatterФорматирование строк. Класс FormatterФорматирование строк. Класс Formatter. Example 8
 Результат:Форматирование строк. Класс Formatter
 Аргумент спецификатора формата [argument_index] имеет два вида
Форматирование строк. Класс Formatter. Example 9
 Результат:Форматирование строк. Класс FormatterФорматирование строк. Класс FormatterФорматирование строк. Класс Formatter. Example 10
 Результат:Форматирование строк. Класс Formatter
 Width – минимальное число символов, отводимое подФорматирование строк. Класс Formatter. Example 11
 Результат:Форматирование строк. Класс FormatterФорматирование строк. Класс FormatterФорматирование строк. Класс Formatter. Example 12
 Результат:Форматирование строк. Класс Formatter
 При работе с классом Formatter могут возникнутьФорматирование строк. Класс FormatterФорматирование строк. Класс Formatter
 Метод printf() автоматически использует объект типа FormatterФорматирование строк. Класс Formatter. Example 13
 Результат:ИнтернационализацияИнтернационализация
 Интернационализация программы (i18n) –
 Написание программы, работающей в различных языковыхИнтернационализация
 Класс Locale, (пакет java. util) идентифицирует используемое языковое окружение
 ЛокальИнтернационализацияИнтернационализация
 Методы класса Locale
 getDefault() возвращает текущую локаль, сконструированную на основеИнтернационализация. Example 14Интернационализация. Example 14
 Результат:Интернационализация
 Интернационализация чисел и дат - вывод данных в соответствии сИнтернационализация
 Класс NumberFormat
 Получение форматировщиков чисел
 getNumberInstance(locale) – обычные числа
 getIntegerIntance(locale)Интернационализация
 Класс NumberFormat
 Методы форматирования
 String format(long) – форматировать целое число
Интернационализация. Example 15Интернационализация. Example 15Интернационализация. Example 15Интернационализация. Example 15Интернационализация. Example 15Интернационализация. Example 15Интернационализация
 Класс DateFormat
 Получение форматировщиков времени и дат
 getDateInstance([dateStyle[, locale]]) –Интернационализация
 Класс DateFormat
 Стили
 DEFAULT, FULL, LONG, MEDIUM, SHORT
 Методы форматирования
Интернационализация. Example 16Интернационализация. Example 16Интернационализация. Example 16Интернационализация. Example 16Интернационализация. Example 16
 Результат:ResourceBundleResourceBundle
 Управление набором ресурсов производится классом ResourceBundle, находящимся в пакете java.util.ResourceBundle. Example 17 
 Ресурс ResourceExample может быть представлен либо вResourceBundle. Example 17ResourceBundle. Example 17
 Результат:ResourceBundle. Example 18ResourceBundle. Example 18
 Для корректного отображения нелатинских символов ознакомьтесь с работойResourceBundle. Example 18ResourceBundle. Example 18ResourceBundle. Example 18
 Результат:Регулярные выраженияРегулярные выражения
 Регулярные выражения (англ. regular expressions) ― современная система поискаРегулярные выражения
 Регулярное выражение представляет собой строку-образец (англ. Pattern), состоящую изРегулярные выражения
 Символы регулярных выражений
 x – неметасимвол
 \\ - \Регулярные выражения
 Классы символов регулярных выражений
 [abc] – a, b, илиРегулярные выражения
 Предопределенные классы символов
 . – любой символ
 \d –Регулярные выражения
 Обнаружение совпадения вначале и в конце
 ^a – якорьРегулярные выражения
 Квантификаторы
 a? – a один раз или ни разу
Регулярные выражения. Example 19
 .+ – будет соответствовать любому тексту
 A.+Регулярные выражения. Example 20
 [a-zA-Z]{1}[a-zA-Z\d\u002E\u005F]+@([a-zA-Z]+\u002E){1,2}((net)|(com)|(org)) - последовательность вида [a-zA-Z] указывает наPattern & matcherPattern & Matcher
 Пакет java.util.regexсостоит всего из трех классов: Matcher, Pattern,Pattern & Matcher
 Последовательность вызова методов при работе с regexp:Pattern & Matcher
 Методы класса Pattern
 Pattern compile(String regex) - возвращаетPattern & Matcher
 Методы класса Pattern
 String pattern()  — возвращаетPattern & Matcher. Example 21Pattern & Matcher. Example 21
 Результат:Pattern & Matcher
 Методы класса Matcher
 Начальное состояние объекта типа MatcherPattern & Matcher
 Методы класса Matcher
 int end() — возвращает индексPattern & Matcher
 Выделение групп
  Группы в шаблоне обозначаются скобкамиPattern & Matcher
 Методы, для работы с группами
 
 String group()Pattern & Matcher
 Методы, для работы с группами
 
 int end()Pattern & Matcher. Example 22
 Результат:Pattern & Matcher. Example 23Pattern & Matcher. Example 23
 Результат:Pattern & Matcher. Example 24Pattern & Matcher. Example 24
 Результат:КодировкиКодировки
 При создании строк конструктор String(byte[] byteArray, String encoding) создает Unicode-строкуКодировки
 Если на компьютере установлена локаль, то компилятор создаст символы UnicodeКодировки
 Если исходный кириллический ASCII-текст был в одной кодировке, а местнаяКодировки
 Правильные символы Unicode-кириллицы получаются, если использовать ту же кодовую таблицу,Кодировки. Example 25
 Результат:Ihar Blinou, PhD
 Java.SE.03
 Information Handling



Слайды и текст этой презентации
Слайд 1
Описание слайда:
Information handling


Слайд 2
Описание слайда:
Содержание Класс String Классы StringBuilder, StringBuffer Форматирование строк. Класс Formatter Интернационализация ResourceBundle Регулярные выражения Pattern & Matcher Кодировки

Слайд 3
Описание слайда:
КЛАСС sTRING

Слайд 4
Описание слайда:
Класс String Строка – объект класса String. Строка является неизменяемой (immutable). Строковое значение не может быть изменено после создания объекта при помощи какого-либо метода. Любое изменение приводит к созданию нового объекта. Ссылку на объект класса String можно изменить так, чтобы она указывала на другой объект, т.е. на другое значение.

Слайд 5
Описание слайда:
Класс String Ссылка типа String на строку-константу: Замечание: Пустая строка String s = ""; не содержит ни одного символа. Пустая ссылка String s = null; не указывает ни на какую строку и не является объектом.

Слайд 6
Описание слайда:
Класс String Некоторые конструкторы класса String.

Слайд 7
Описание слайда:
Класс String Примеры создание строк

Слайд 8
Описание слайда:
Класс String Интерфейс CharSequence реализуют классы String, StringBuilder, StringBuffer. Методы интерфейса CharSequence:

Слайд 9
Описание слайда:
Класс String Методы чтения символов из строки: char charAt(int index) – возвращает символ по значению индекса; void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) - возвращает символьное представление участка строки; int length() – возвращает длину строки; boolean isEmpty() – возращает true, если строки не содержит симоволов, и false – в противном случае; int codePointAt(int index) – возвращает кодовую точку для позиции в строке, заданной параметром index

Слайд 10
Описание слайда:
Класс String int codePointBefore(int index) – возвращает кодовую точку для позиции в строке, предшествующей заданной параметром index; int codePointCount(int beginIndex, int endIndex) – возвращает количество кодовых точек в порции вызывающей строки, расположенной между символьными порциями beginIndex и endIndex-1; byte[] getBytes() – возвращает строку в виде последовательности байт, используя кодировку по умолчанию; int offsetByCodePoints(int index, int codePointOffset) – возвращает позицию в вызывающей строке, расположенную на расстоянии codePointOffset кодовых точек после начальной позиции, заданной параметром index;

Слайд 11
Описание слайда:
Класс String byte[] getBytes(Charset charset) - возвращает строку в виде последовательности байт, используя указанную в параметре кодировку; void getBytes(int srcBegin, int srcEnd, byte[] dst, int dstBegin) - возвращает массив байт dst из подстроки с srcBegin до srcEnd индекса; byte[] getBytes(String charsetName) - возвращает строку в виде последовательности байт, используя название кодировки.

Слайд 12
Описание слайда:
Класс String Методы сравнения строк: boolean equals(Object obj) - проверяет идентична ли строка указанному объекту; boolean equalsIgnoreCase(String str2) - если строки одинаковы, игнорируя строчные-прописные буквы, то true int compareTo(String str2) - лексиграфическое сравнение строк;

Слайд 13
Описание слайда:
Класс String compareToIgnoreCase(String str) - лексиграфическое сравнение строк без учета регистра символов; boolean contentEquals(CharSequence cs) – сравнивает строку с объектом типа CharSequence; boolean contentEquals(StringBuffer sb) – сравнивает строку с объектом типа StringBuffer; String intern() - занесение строки в пул литералов.

Слайд 14
Описание слайда:
Класс String Работа с символами строки: String toUpperCase() - преобразует строку в верхний регистр; String toUpperCase(Locale locale) - преобразует строку в верхний регистр, используя указанную локализацию; String toLowerCase() - преобразует строку в нижний регистр; String toLowerCase(Locale locale) - преобразует строку в нижний регистр, используя указанную локализацию; char[] toCharArray() - преобразует строку с новый массив символов.

Слайд 15
Описание слайда:
Класс String. Example 1 Объединение строк: String concat(String str) ИЛИ +

Слайд 16
Описание слайда:
Класс String Поиск символов и подстрок int indexOf(int ch) - поиск первого вхождения символа в строке; int indexOf(int ch, int fromIndex) - поиск первого вхождения символа в строке с указанной позиции; int indexOf(String str) - поиск первого вхождения указанной подстроки; int indexOf(String str, int fromIndex) - поиск первого вхождения указанной подстроки с указанной позиции; int lastIndexOf(int ch) - поиск последнего вхождения символа;

Слайд 17
Описание слайда:
Класс String int lastIndexOf(int ch, int fromIndex) - поиск последнего вхождения символа с указанной позиции; int lastIndexOf(String str) - поиск последнего вхождения строки; int lastIndexOf(String str, int fromIndex) - поиск последнего вхождения строки с указанной позиции; String replace(char oldChar, char newChar) - замена в строке одного символа на другой; String replace(CharSequence target, CharSequence replacement) - замена одной подстроки другой;

Слайд 18
Описание слайда:
Класс String boolean contains(CharSequence cs) - проверяет, входит ли указанная последовательность символов в строку; static String copyValueOf(char[] data) - возвращает строку, равную символам data; static String copyValueOf(char[] data, int offset, int count) - возвращает подстроку, равную части символов data;

Слайд 19
Описание слайда:
Класс String boolean endsWith(String suffix) - заканчивается ли String суффиксом suffix; boolean startsWith(String prefix) - начинается ли String с префикса prefix; boolean startsWith(String prefix, int toffset) - начинается ли String с префикса prefix учитывая смещение toffset.

Слайд 20
Описание слайда:
Класс String Извлечение подстрок String trim() – отсекает на концах строки пустые символы; String substring(int startIndex) – возвращает подстроку, с startIndex до конца строки; String substring(int startIndex, int endIndex) – возвращает подстроку с beginIndex до endIndex; CharSequence subSequence(int beginIndex, int endIndex) – сокращает подпоследовательность типа CharSequence как подстроку с beginIndex до endIndex.

Слайд 21
Описание слайда:
Класс String Приведение значений элементарных типов и объектов к строке String toString() - возвращает саму строку; static String valueOf(Object obj) - возвращает результат toString для объекта; static String valueOf(char[] charArray) - возвращает строку, из символов charArray; static String valueOf(char[] data, int offset, int count) - возвращает подстроку, из части символов data;

Слайд 22
Описание слайда:
Класс String static String valueOf(boolean b) -.возвращает строку “true” или “false”, в зависимости от b; static String valueOf(char c) - возвращает строку из символа с; static String valueOf(int i) - возвращает строку, полученную из i; static String valueOf(long l) - возвращает строку, полученную из l; static String valueOf(float f) - возвращает строку, полученную из f; static String valueOf(double d) - возвращает строку, полученную из d.

Слайд 23
Описание слайда:
Класс String Форматирование строк static String format(String format, Object... args) static String format(Locale l, String format, Object... args) (см. класс Formatter)

Слайд 24
Описание слайда:
Класс String Сопоставление с образцом boolean regionMatches(boolean ignoreCase, int toffset, String ther, int ooffset, int len) - сравнивает часть строки с другой строкой, если ignoreCase=true, то игнорирует строчные-прописные буквы; boolean regionMatches(int toffset, String other, int ooffset, int len) - сравнивает часть строки с другой строкой, len - сколько символов сравнивать; String replace(char oldChar, char newChar) - возвращает строку, где все символы oldChar заменены на newChar;

Слайд 25
Описание слайда:
Класс String String replace(CharSequence target, CharSequence replacement) - возвращает строку, заменяя элементы target на replacement. boolean matches(String regexStr) - удовлетворяет ли строка указанному регулярному выражению; String replaceFirst(String regexStr, String replacement) - заменяет первое вхождение строки, удовлетворяющей регулярному выражению, указанной строкой; String replaceAll(String regexStr, String replacement) - заменяет все вхождения строк, удовлетворяющих регулярному выражению, указанной строкой;

Слайд 26
Описание слайда:
Класс String String[] split(String regexStr) - разбивает строку на части, границами разбиения являются вхождения строк, удовлетворяющих регулярному выражению; String[] split(String regexStr, int limit) - аналогично предыдущему, но с ограничением применения регулярного выражения к строке значением limit. Если limit>0, то и размер возвращаемого массива строк не будет больше limit. Если limit<=0, то регулярное выражение применяется к строке неограниченное число раз.

Слайд 27
Описание слайда:
Класс String. Example 2 Результат:

Слайд 28
Описание слайда:
Класс String. Example 3 Результат:

Слайд 29
Описание слайда:
Класс String. Example 4 Результат:

Слайд 30
Описание слайда:
Классы stringbuilder, stringbuffer

Слайд 31
Описание слайда:
Классы StringBuilder, StringBuffer Классы StringBuilder и StringBuffer по своему предназначению близки к классу String. Но, содержимое и размеры объектов классов StringBuilder и StringBuffer можно изменять!!! Основным и единственным отличием StringBuilder от StringBuffer является потокобезопасность последнего.

Слайд 32
Описание слайда:
Классы StringBuilder, StringBuffer Конструкторы класса StringBuilder StringBuilder(String str) – создает StringBuilder, значение которого устанавливается в передаваемую строку, плюс дополнительные 16 пустых элементов в конце строки. StringBuilder(CharSequence charSeq) – строит StringBuilder, содержащий те же самые символы как указанно в CharSequence, плюс дополнительные 16 пустых элементов, конечных CharSequence. StringBuilder(int length) – создает пустой StringBuilder с указанной начальной вместимостью. StringBuilder() – создает пустой StringBuilder со способностью 16 (16 пустых элементов).

Слайд 33
Описание слайда:
Классы StringBuilder, StringBuffer Чтение и изменение символов объекта StringBuilder int length() – созвращает количество символов в строке. char charAt(int index) – возвращает символьное значение, расположенное на месте index. void setCharAt(int index, char ch) – символ, расположенный на месте index заменяется символом ch. CharSequence subSequence(int start, int end) – возвращает новую подстроку.

Слайд 34
Описание слайда:
Классы StringBuilder, StringBuffer ОТЛИЧИЕ объектов класса String от объектов классов StringBuilder, StringBuffer Для класса StringBuffer не переопределены методы equals() и hashCode(), т.е. сравнить содержимое двух объектов невозможно, к тому же хэш-коды всех объектов этого типа вычисляются так же, как и для класса Object.

Слайд 35
Описание слайда:
Классы StringBuilder, StringBuffer Добавление символов в объект класса StringBuilder. Добавляет аргумент этому StringBuilder. Данные преобразовываются в строку прежде, чем операция добавить будет иметь место. StringBuilder append(Object obj) StringBuilder append(String str) StringBuilder append(CharSequence charSeq) StringBuilder append(CharSequence charSeq, int start, int end) StringBuilder append(char[] charArray) StringBuilder append(char[] charArray, int offset, int length) StringBuilder append(char c)

Слайд 36
Описание слайда:
Классы StringBuilder, StringBuffer Добавление символов в объект класса StringBuilder (продолжение). StringBuilder append(boolean b) StringBuilder append(int i) StringBuilder append(long l) StringBuilder append(float f) StringBuilder append(double d) StringBuilder append(StringBuffer sb) StringBuilder appendCodePoint(int codePoint)

Слайд 37
Описание слайда:
Классы StringBuilder, StringBuffer Вставка символов в объект StringBuilder. Вставляет второй аргумент в StringBuilder.. Первый аргумент целого числа указывает индекс, перед которым должны быть вставлены данные. Данные преобразовывают в строку прежде, чем операция вставки будет иметь место. StringBuilder insert(int offset, Object obj) StringBuilder insert(int dstOffset, CharSequence seq) StringBuilder insert(int dstOffset, CharSequence seq, int start, int end) StringBuilder insert(int offset, String str) StringBuilder insert(int offset, char[] charArray) StringBuilder insert(int offset, char c)

Слайд 38
Описание слайда:
Классы StringBuilder, StringBuffer Вставка символов в объект StringBuilder (продолжение). StringBuilder insert(int offset, boolean b) StringBuilder insert(int offset, int i) StringBuilder insert(int offset, long l) StringBuilder insert(int offset, float f) StringBuilder insert(int offset, double d) StringBuilder insert(int index, char[] str, int offset, int len)

Слайд 39
Описание слайда:
Классы StringBuilder, StringBuffer Удаление символов из объекта StringBuilder. StringBuilder deleteCharAt(int index) – удаляет символ, расположенный по index. StringBuilder delete(int start, int end) – удаляет подпоследовательность от start до end-1(включительно) в последовательности символов StringBuilder's. StringBuilder reverse() – полностью изменяет последовательность символов в этом StringBuilder.

Слайд 40
Описание слайда:
Классы StringBuilder, StringBuffer Управление ёмкостью. int capacity() – возвращает текущую емкость. void ensureCapacity(int minCapacity) – гарантирует, что вместимость по крайней мере равна указанному минимуму. void trimToSize() – уменьшает емкость до величины хранимой последовательности. void setLength(int newLength) – устанавливает длину символьной последовательности. Если newLength - меньше чем length(), последние символы в символьной последовательности являются усеченными. Если newLength больше чем length(), нулевые символы добавляются в конце символьной последовательности.

Слайд 41
Описание слайда:
Классы StringBuilder, StringBuffer В классе присутствуют также методы, аналогичные методам класса String, такие как: replace(), charAt(), length(), getChars(), codePointAt(int index), codePointBefore(int index), codePointCount(int beginIndex, int endIndex), getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin), indexOf(String str), indexOf(String str, int fromIndex), lastIndexOf(String str), lastIndexOf(String str, int fromIndex), offsetByCodePoints(int index, codePointOffset), replace(int start, int end, String str), substring(int start), substring(int start, int end) , toString().

Слайд 42
Описание слайда:
Классы StringBuilder, StringBuffer. Example 5 Результат:

Слайд 43
Описание слайда:
Классы StringBuilder, StringBuffer. Example 6 Результат:

Слайд 44
Описание слайда:
Классы StringBuilder, StringBuffer. Example 7 Результат:

Слайд 45
Описание слайда:
Форматирование строк. Класс formatter

Слайд 46
Описание слайда:
Форматирование строк. Класс Formatter Класс Formatter (пакет java.util) - обеспечивает преобразование формата позволяющее выводить числа, строки, время и даты нужном формате format(String format, Object... args) format(Locale l, String format, Object... args)

Слайд 47
Описание слайда:
Форматирование строк. Класс Formatter Для классов PrintStream и PrintWriter добавлен метод printf(). Метод printf() автоматически использует класс Formatter. printf(String format, Object... args) printf(Locale l, String format, Object... args)

Слайд 48
Описание слайда:
Форматирование строк. Класс Formatter Спецификаторы формата. Общий синтаксис спецификатора формата следующий: %[argument_index][flags][width][precision]conversion Значение аргумента спецификатора формата conversion приведены в таблице далее. Кроме строчного написания значения conversion можно использовать следующие значения, определяемые прописными буквами: ‘B’, ‘H’, ‘S’, ‘C’, ‘X’, ‘E’, ‘G’, ‘A’, ‘T’.

Слайд 49
Описание слайда:
Форматирование строк. Класс Formatter

Слайд 50
Описание слайда:
Форматирование строк. Класс Formatter

Слайд 51
Описание слайда:
Форматирование строк. Класс Formatter. Example 8 Результат:

Слайд 52
Описание слайда:
Форматирование строк. Класс Formatter Аргумент спецификатора формата [argument_index] имеет два вида i$ или <. i$ – i (десятичное целое число) - указывает на положение аргумента во множестве параметров переменной длины format(String format, Object... args), начинающемся с положения 1. < – указывает на тот же самый аргумент, который использовался в предыдущем спецификаторе формата в форматирующей последовательности, и не может поэтому быть первым в списке спецификаторов формата.

Слайд 53
Описание слайда:
Форматирование строк. Класс Formatter. Example 9 Результат:

Слайд 54
Описание слайда:
Форматирование строк. Класс Formatter

Слайд 55
Описание слайда:
Форматирование строк. Класс Formatter

Слайд 56
Описание слайда:
Форматирование строк. Класс Formatter. Example 10 Результат:

Слайд 57
Описание слайда:
Форматирование строк. Класс Formatter Width – минимальное число символов, отводимое под представление форматируемого параметра. Precision – имеет формат .n, где n – число символов в десятичной части числа. Особенности поведения зависят от преобразования.

Слайд 58
Описание слайда:
Форматирование строк. Класс Formatter. Example 11 Результат:

Слайд 59
Описание слайда:
Форматирование строк. Класс Formatter

Слайд 60
Описание слайда:
Форматирование строк. Класс Formatter

Слайд 61
Описание слайда:
Форматирование строк. Класс Formatter. Example 12 Результат:

Слайд 62
Описание слайда:
Форматирование строк. Класс Formatter При работе с классом Formatter могут возникнуть следующие исключения. Данные классы исключений являются подклассами класса IllegalFormatException.

Слайд 63
Описание слайда:
Форматирование строк. Класс Formatter

Слайд 64
Описание слайда:
Форматирование строк. Класс Formatter Метод printf() автоматически использует объект типа Formatter для создания форматированной строки. Она выводится как строка в стандартный поток вывода по умолчанию на консоль. Метод printf() определен в классах PrintStream и PrintWriter. В классе PrintStream у метода printf() две синтаксические формы записи: PrintStream printf(String fmtString, Object...args) PrintStream printf(Local loc, String fmtString, Object...args)

Слайд 65
Описание слайда:
Форматирование строк. Класс Formatter. Example 13 Результат:

Слайд 66
Описание слайда:
Интернационализация

Слайд 67
Описание слайда:
Интернационализация Интернационализация программы (i18n) – Написание программы, работающей в различных языковых окружениях Локализация программы (l10n) – Адаптация интернационализированной программы к конкретным языковым окружением Пакеты java.util java.text

Слайд 68
Описание слайда:
Интернационализация Класс Locale, (пакет java. util) идентифицирует используемое языковое окружение Локаль определяется: 1) константами: Locale.US, Locale.FRANCE 2) конструкторами класса Locale Locale(language) – по языку Locale(language, country) – по языку и стране Locale(language, country, variant) – по языку стране и варианту

Слайд 69
Описание слайда:
Интернационализация

Слайд 70
Описание слайда:
Интернационализация Методы класса Locale getDefault() возвращает текущую локаль, сконструированную на основе настроек операционной системы. getLanguage() – код языка региона getDisplayLanguage – название языка getCountry() – код региона getDisplayCountry() – название региона getAvailableLocales() – список доступных локалей

Слайд 71
Описание слайда:
Интернационализация. Example 14

Слайд 72
Описание слайда:
Интернационализация. Example 14 Результат:

Слайд 73
Описание слайда:
Интернационализация Интернационализация чисел и дат - вывод данных в соответствии с языковым контекстом. Типы данных Числа Время и дата Сообщения Пакет java.text

Слайд 74
Описание слайда:
Интернационализация Класс NumberFormat Получение форматировщиков чисел getNumberInstance(locale) – обычные числа getIntegerIntance(locale) – целые числа (с округлением) getPercentInstance(locale) – проценты getCurrencyInstance(locale) – валюта

Слайд 75
Описание слайда:
Интернационализация Класс NumberFormat Методы форматирования String format(long) – форматировать целое число String format(double) – форматировать число с плавающей точкой Number parse(String) – разобрать локализованное число Выбрасываемое исключение ParseException – ошибка разбора

Слайд 76
Описание слайда:
Интернационализация. Example 15

Слайд 77
Описание слайда:
Интернационализация. Example 15

Слайд 78
Описание слайда:
Интернационализация. Example 15

Слайд 79
Описание слайда:
Интернационализация. Example 15

Слайд 80
Описание слайда:
Интернационализация. Example 15

Слайд 81
Описание слайда:
Интернационализация. Example 15

Слайд 82
Описание слайда:
Интернационализация Класс DateFormat Получение форматировщиков времени и дат getDateInstance([dateStyle[, locale]]) – даты getTimeIntance([timeStyle[, locale]]) – времени getDateTimeIntance([dateStyle, timeStyle, [locale]]) – даты и времени

Слайд 83
Описание слайда:
Интернационализация Класс DateFormat Стили DEFAULT, FULL, LONG, MEDIUM, SHORT Методы форматирования String format(date) – форматировать дату/время Date parse(String) – разобрать локализованную дату/время Выбрасываемое исключение ParseException – ошибка разбора

Слайд 84
Описание слайда:
Интернационализация. Example 16

Слайд 85
Описание слайда:
Интернационализация. Example 16

Слайд 86
Описание слайда:
Интернационализация. Example 16

Слайд 87
Описание слайда:
Интернационализация. Example 16

Слайд 88
Описание слайда:
Интернационализация. Example 16 Результат:

Слайд 89
Описание слайда:
ResourceBundle

Слайд 90
Описание слайда:
ResourceBundle Управление набором ресурсов производится классом ResourceBundle, находящимся в пакете java.util. Основой процесса работы с набором ресурсов является получение набора параметров “ключ-значение” при помощи метода getBundle() класса ResourceBundle.

Слайд 91
Описание слайда:
ResourceBundle. Example 17 Ресурс ResourceExample может быть представлен либо в виде класса унаследованного от ListResourceBundle либо в виде файла, именуемого ResourceExample.properties, содержащего пары ключ-значение.

Слайд 92
Описание слайда:
ResourceBundle. Example 17

Слайд 93
Описание слайда:
ResourceBundle. Example 17 Результат:

Слайд 94
Описание слайда:
ResourceBundle. Example 18

Слайд 95
Описание слайда:
ResourceBundle. Example 18 Для корректного отображения нелатинских символов ознакомьтесь с работой утилиты native2ascii.

Слайд 96
Описание слайда:
ResourceBundle. Example 18

Слайд 97
Описание слайда:
ResourceBundle. Example 18

Слайд 98
Описание слайда:
ResourceBundle. Example 18 Результат:

Слайд 99
Описание слайда:
Регулярные выражения

Слайд 100
Описание слайда:
Регулярные выражения Регулярные выражения (англ. regular expressions) ― современная система поиска текстовых фрагментов в электронных документах, основанная на специальной системе записи образцов для поиска. В стандартную библиотеку Java входит пакет, специально предназначенный для работы с регулярными выражениями – java.util.regex. Эта библиотека может быть использована для выполнения таких задач: поиск данных; проверка данных; выборочное изменение данных; выделение фрагментов данных; и др.

Слайд 101
Описание слайда:
Регулярные выражения Регулярное выражение представляет собой строку-образец (англ. Pattern), состоящую из символов и метасимволов и задающую правило поиска. Метасимволы:

Слайд 102
Описание слайда:
Регулярные выражения Символы регулярных выражений x – неметасимвол \\ - \ как неметасимвол \t – символ табуляции (‘\u009’) \n – символ новой строки (‘\u000A’) \r – символ возврата каретки (‘\u000D’) \f – символ перевода страницы (‘\u000C’)

Слайд 103
Описание слайда:
Регулярные выражения Классы символов регулярных выражений [abc] – a, b, или c [^abc] – символ, исключая a, b или c [a-zA-Z] – символ от a до z или от A до Z, (диапазон) [a-d[m-p]] – от a до d или от m до p: [a-dm-p] (объединение) [a-z&&[def]] – d, e, или f (пересечение) [a-z&&[^bc]] – от a до z, исключая b и c: [ad-z] (вычитание) [a-z&&[^m-p]] – от a до z, не включая от m до p: [a-lq-z](вычитание)

Слайд 104
Описание слайда:
Регулярные выражения Предопределенные классы символов . – любой символ \d – цифра [0-9] \D – не цифра: [^0-9] \s – [ \t\n\x0B\f\r] \S – [^\s] \w – [a-zA-Z_0-9] \W – [^\w]

Слайд 105
Описание слайда:
Регулярные выражения Обнаружение совпадения вначале и в конце ^a – якорь для обнаружения сначала строки a$ – якорь на совпадение в конце строки Логические операторы в регулярных выражениях ab – за a следует b a|b – a либо b (a) – а, для выделения групп

Слайд 106
Описание слайда:
Регулярные выражения Квантификаторы a? – a один раз или ни разу a* – a ноль или более раз a+ – a один или более раз a{n} – a n раз a{n,} – a n или более раз a{n,m} – a от n до m раз

Слайд 107
Описание слайда:
Регулярные выражения. Example 19 .+ – будет соответствовать любому тексту A.+ – любое выражение, которое начинается на букву "А". ^\s+ – один или более пробелов вначале \s+$ – один или более пробелов вконце [\d\s()\-]+ – класс символов, в который входят все цифры \\d, все пробельные символы \\s, круглые скобки и дефис. Знак + в конце выражения означает, что любой из этих символов, может встречаться один или более раз

Слайд 108
Описание слайда:
Регулярные выражения. Example 20 [a-zA-Z]{1}[a-zA-Z\d\u002E\u005F]+@([a-zA-Z]+\u002E){1,2}((net)|(com)|(org)) - последовательность вида [a-zA-Z] указывает на множество, {n} говорит о том, что некоторый символ должен встретится n раз, а {n,m} - от n до m раз, символ \d указывает на множество цифр, “\u002E” и “\u005F” - это символы точки и подчеркивания соответственно, знак плюс после некоторой последовательности говорит о том, что она должна встретится один или более раз, “|” - представление логического “или”. ([.[^@\s]]+)@([.[^@\s]]+)\.([a-z]+) – формат e-mail адреса

Слайд 109
Описание слайда:
Pattern & matcher

Слайд 110
Описание слайда:
Pattern & Matcher Пакет java.util.regexсостоит всего из трех классов: Matcher, Pattern, PatternSyntaxException. Pattern - скомпилированное представление регулярного выражения. Matcher - движок, который производит операцию сравнения (match). PatternSyntaxException - указывает на синтаксическую ошибку в выражении.

Слайд 111
Описание слайда:
Pattern & Matcher Последовательность вызова методов при работе с regexp:

Слайд 112
Описание слайда:
Pattern & Matcher Методы класса Pattern Pattern compile(String regex) - возвращает Pattern, который соответствует шаблону regex. Matcher matcher(CharSequence input) - возвращает Matcher, с помощью которого можно находить соответствия в строке input. boolean matches(String regex, CharSequence input) -проверяет на соответствие строки input шаблону regex.

Слайд 113
Описание слайда:
Pattern & Matcher Методы класса Pattern String pattern() — возвращает строку, соответствующую шаблону String [ ] split(CharSequence input) - разбивает строку input, учитывая, что разделителем является шаблон. String[] split(CharSequence input, int limit) -разбивает строку input на не более чем limit частей.

Слайд 114
Описание слайда:
Pattern & Matcher. Example 21

Слайд 115
Описание слайда:
Pattern & Matcher. Example 21 Результат:

Слайд 116
Описание слайда:
Pattern & Matcher Методы класса Matcher Начальное состояние объекта типа Matcher неопределенно. boolean matches() — проверяет соответствует ли вся строка шаблону. boolean lookingAt() — пытается найти последовательность символов, начинающейся с начала строки и соответствующей шаблону. boolean find() или boolean find(int start) - пытается найти последовательность символов соответствующих шаблону в любом месте строки. Параметр start указывает на начальную позицию поиска.

Слайд 117
Описание слайда:
Pattern & Matcher Методы класса Matcher int end() — возвращает индекс последнего символа подпоследовательности, удовлетворяющей шаблону. reset() или reset(Char Sequence input) - сбрасывает состояние Matcher'a в исходное,также устанавливает новую последовательность символов для поиска. replaceAll(String replacement) - замена всех подпоследовательностей символов, удовлетворяющих шаблону, на заданную строку.

Слайд 118
Описание слайда:
Pattern & Matcher Выделение групп Группы в шаблоне обозначаются скобками "(" и ")". Номера групп начинаются с единицы. Нулевая группа совпадает со всей найденной подпоследовательностью. ((A)(B(C))) 1    ((A)(B(C))) 2    (A) 3    (B(C)) 4    (C)

Слайд 119
Описание слайда:
Pattern & Matcher Методы, для работы с группами String group() — возвращает всю подпоследовательность, удовлетворяющую шаблону. String group(int group) — возвращает конкретную группу. int groupCount() — возвращает количество групп.

Слайд 120
Описание слайда:
Pattern & Matcher Методы, для работы с группами int end() — возвращает индекс последнего символа подпоследовательности, удовлетворяющей шаблону. int end(int group) — возвращает индекс последнего символа указанной группы. int start() — возвращает индекс первого символа подпоследовательности, удовлетворяющей шаблону. int start(int group) — возвращает индекс первого символа указанной группы.

Слайд 121
Описание слайда:
Pattern & Matcher. Example 22 Результат:

Слайд 122
Описание слайда:
Pattern & Matcher. Example 23

Слайд 123
Описание слайда:
Pattern & Matcher. Example 23 Результат:

Слайд 124
Описание слайда:
Pattern & Matcher. Example 24

Слайд 125
Описание слайда:
Pattern & Matcher. Example 24 Результат:

Слайд 126
Описание слайда:
Кодировки

Слайд 127
Описание слайда:
Кодировки При создании строк конструктор String(byte[] byteArray, String encoding) создает Unicode-строку из массива байтовых ASCII-кодировок символов. В самом простом случае компилятор для получения двубайтовых символов Unicode добавит к каждому байту сташий нулевой бит. Получится диапазон '\u0000'-'\u04ff' кодировки Unicode, соответствующий кодам Latin1. Тексты на кириллице будут выведены неправильно.

Слайд 128
Описание слайда:
Кодировки Если на компьютере установлена локаль, то компилятор создаст символы Unicode соответственно местной кодовой странице (в Windows обычно CP1251, в DOS - CP866, *nix - KOI8-R). Если локальная кодировка совпадает с кодировкой выводимых символов, то строка будет верна.

Слайд 129
Описание слайда:
Кодировки Если исходный кириллический ASCII-текст был в одной кодировке, а местная - другая, то Unicode-строки Java не будут соответствовать кириллице. В этих случаях используется этот конструктор, с параметром нужной кодировки. Таким образом, если поток байт выводится и на консоль (CP866) и в файл (CP1251) Windows, то результат будет отличаться.

Слайд 130
Описание слайда:
Кодировки Правильные символы Unicode-кириллицы получаются, если использовать ту же кодовую таблицу, в которой записан исходный массив байт. При выводе же строки на консоль, в окно, в файл или при передаче по сети лучше преобразовать строку Java с символами Unicode по правилам выхода в нужное место.

Слайд 131
Описание слайда:
Кодировки. Example 25 Результат:

Слайд 132
Описание слайда:
Ihar Blinou, PhD Java.SE.03 Information Handling


Скачать презентацию на тему Java.SE.03. Класс String можно ниже:

Похожие презентации