Класс Character
В этом классе собраны статические константы и методы для работы с отдельными символами.
Статический метод
digit(char ch, in radix)
переводит цифру ch системы счисления с основанием radix в ее числовое значение типа int .
Статический метод
forDigit(int digit, int radix)
производит обратное преобразование целого числа digit в соответствующую цифру (тип char ) в системе счисления с основанием radix .
Основание системы счисления должно находиться в диапазоне от Character.MIN_RADIX до Character.MAX_RADIX.
Метод tostring() переводит символ, содержащийся в классе, в строку с тем же символом.
Статические методы toLowerCase() , touppercase(), toTitieCase() возвращают символ, содержащийся в классе, в указанном регистре. Последний из этих методов предназначен для правильного перевода в верхний регистр четырех кодов Unicode, не выражающихся одним символом.
Множество статических логических методов проверяют различные характеристики символа, переданного в качестве аргумента метода:
- isDef ined() — выясняет, определен ли символ в кодировке Unicode;
- isDigit() — проверяет, является ли символ цифрой Unicode;
- isidentifierignorable() — выясняет, нельзя ли использовать символ в идентификаторах;
- isisocontroi() — определяет, является ли символ управляющим;
- isJavaidentifierPart() — выясняет, можно ли использовать символ в идентификаторах;
- isjavaidentifierstart() — определяет, может ли символ начинать идентификатор;
- isLetter() — проверяет, является ли символ буквой Java;
- IsLetterOrDigit() — Проверяет, является ли символ буквой или цифрой Unicode;
- isLowerCase() — определяет, записан ли символ в нижнем регистре;
- isSpaceChar() — выясняет, является ли символ пробелом в смысле Unicode;
- isTitieCase() — проверяет, является ли символ титульным;
- isUnicodeldentifierPart() — выясняет, можно ли использовать символ в именах Unicode;
- isunicodeidentifierstart() — проверяет, является ли символ буквой Unicode;
- isUpperCase() — проверяет, записан ли символ в верхнем регистре;
- isWhitespace() — выясняет, является ли символ пробельным.
Точные диапазоны управляющих символов, понятия верхнего и нижнего регистра, титульного символа, пробельных символов, лучше всего посмотреть по документации Java API.
Листинг 4.2 демонстрирует использование этих методов, а на рис. 4.3 показан вывод этой программы.
Листинг 4.2. Методы класса Character в программе CharacterTest
class CharacterTest{
public static void main(String[] args){
char ch = '9';
Character cl = new Character(ch);
System.out.println("ch = " + ch);
System.out.println("cl.charValue() = " +
c1.charValue());
System.out.println("number of 'A' = " +
Character.digit('A', 16}};
System.out.println("digit for 12 = " +
Character.forDigit(12, 16}};
System.out.printlnC'cl = " + cl.toString() );
System.out.println("ch isDefined? " +
Character.isDefined(ch));
System.out.println("ch isDigit? " +
Character.isDigit(ch));
System.out.println("ch isldentifierlgnorable? " +
Character.isldentifierlgnorable(ch));
System.out.println("ch isISOControl? " +
Character.isISOControl(ch));
System.out.println("ch isJavaldentifierPart? " +
Character.isJavaldentifierPart(ch));
System.out.println("ch isJavaldentifierStart? " +
Character.isJavaldentifierStart(ch));
System.out.println("ch isLetter? " +
Character.isLetter(ch));
System.out.println("ch isLetterOrDigit? " +
Character.isLetterOrDigit(ch));
System.out.println("ch isLowerCase? " +
Character.isLowerCase(ch));
System.out.println("ch isSpaceChar? " +
Character.isSpaceChar(ch));
System.out.println("ch isTitleCase? " +
Character.isTitleCase(ch));
System.out.println("ch isUnicodeldentifierPart? " +
Character.isUnicodeldentifierPart(ch));
System.out.println("ch isUnicodeldentifierStart? " +
Character.isUnicodeldentifierStart(ch));
System.out.println("ch isUpperCase? " +
Character.isUpperCase(ch));
System.out.println("ch isWhitespace? " +
Character.isWhitespace(ch)); } }
В класс Character вложены классы Subset и UnicodeBlock , причем класс Unicode и еще один класс, inputSubset , являются расширениями класса Subset , как это видно на рис. 4.1. Объекты этого класса содержат подмножества Unicode.
Рис. 4.3. Методы класса Character в программе CharacterTest
Вместе с классами-оболочками удобно рассмотреть два класса для работы со сколь угодно большими числами.
Назад | Начало | Вперед |