Java. Клас Character. Огляд методів та констант

Клас Character. Огляд методів та констант. Конструктор класу


Зміст


Пошук на інших ресурсах:

1. Клас Character. Конструктор класу Character(char)

Клас Character служить оболонкою для типу char. Клас містить конструктор, який має наступну загальну форму:

public Character(char value);

тут

  • value – значення, що передається в конструктор.

Приклад. Наводяться способи ініціалізації змінної типу Character.

// Ініціалізація змінної типу Character при створенні об'єкту класу
// Спосіб 1 - з використанням оператора new та конструктора
Character ch1 = new Character('f');
System.out.println(ch1.charValue());

// Спосіб 2 - без використання оператора new та конструктора
Character ch2 = 'z';
System.out.println(ch2.charValue());

 

2. Методи та константи класу Character. Огляд

Нижче наводяться основні методи класу Character без переліку методів, що підтримують кодові точки в Unicode:

  • charValue() – повертає символ, що поміщений в оболонку Character;
  • equals() – порівняти поточний об’єкт з іншим об’єктом типу Character;
  • hashCode() – отримати хеш-код об’єкта;
  • compareTo() – порівняти поточний символ з іншим символом;
  • equals() – порівняти на рівність поточний об’єкт з іншим об’єктом;
  • toString() – отримати представлення символьного значення як тип String;
  • compare() – порівняти два значення типу char;
  • digit() – повернути числове значення символу в заданій системі числення;
  • fordigit() – визначити символьне представлення числа у заданій системі числення;
  • isAlphabetic() – визначити, чи є символ алфавітним;
  • isDefined() – визначає, чи символ є визначений в Unicode-кодуванні;
  • idDigit() – визначає, чи символ є цифрою;
  • isIdentifierIgnorable() – визначає, чи потрібно розглядувати вказаний символ як такий, що ігнорується;
  • isLowerCase() – визначає, чи є заданий символ рядковою літерою;
  • isSpace() – визначає, якщо заданий символ є пробілом за кодовою сторінкою ISO-Latin1;
  • isUpperCase() – визначає, чи заданий символ є символом верхнього регістру;
  • isWhiteSpace() – визначає, чи визначений символ є пробілом згідно класифікації Java;
  • reverseBytes() – повертає значення, що отримується реверсуванням порядку байт в заданому значенні типу char;
  • valueOf() – повертає екземпляр типу Character, що представляє визначене значення типу char.

Крім методів, у класі Character визначено ряд наступних констант:

  • BYTES – містить розмір типу char в байтах;
  • MAX_RADIX – максимальна основа системи зчислення, доступна для перетворення в рядки і назад;
  • MAX_VALUE – максимально-доступне значення типу char;
  • MIN_VALUE – мінімально-допустиме значення типу char;
  • SIZE – розмір типу в бітах;
  • TYPE – містить екземпляр класу типу Class для типу char.

У цій темі розглядаються базові методи класу Character. В огляд не включені деякі методи, які використовують кодові точки Unicode та перевизначають методи класу Object.

 

3. Метод charValue(). Отримати символ типу char

Метод charValue() повертає символ примітивного типу char, який представлений об’єктом типу Character. Згідно з документацією Java загальна форма оголошення цього методу наступна:

public char charValue();

Приклад.

// Метод charValue(), char <= Character

// 1. Створити об'єкт типу Character
Character objC = '+';

// 2. Отримати символ типу char
char c;
c = objC.charValue();

// 3. Вивести результат
System.out.println(c);

 

4. Метод compareTo(). Порівняти поточний символ з іншим символом

Якщо потрібно порівняти поточний символ з деяким іншим символом то використовується метод compareTo(). Синтаксис оголошення методу наступний:

public int compareTo(Character anotherCharacter);

тут anotherCharacter – інший символ, з яким порівнюється символ з поточного екземпляру.

Якщо символи рівні, то функція повертає 0. Якщо символ поточного екземпляру менше ніж символ anotherCharacter, то повертається значення менше 0. Термін “менше” означає, що код символу поточного екземпляру менше коду символу anotherCharacter. Якщо код символу поточного екземпляру більше ніж код символу, що передається параметром, то функція повертає значення більше 0.

Фактично, функція повертає різницю між кодом поточного символу і кодом символу, що є вхідним параметром.

Приклад.

// Метод compareTo() - порівняти коди символів

// 1. Створити об'єкт типу Character
Character objC = 'G';

// 2. Порівняти поточний об'єкт з іншими символами
int result;
result = objC.compareTo('C'); // result = 4
result = objC.compareTo('G'); // result = 0

Character objC2 = 'F';
result = objC.compareTo(objC2); // result = 1

 

5. Метод toString(). Отримати представлення символьного значення як тип String

Метод toString() перевизначає однойменний метод класу Object. Метод дозволяє отримати рядкове представлення символу типу char, що зберігається в поточному екземплярі. Довжина результуючого рядка рівна 1. Загальна форма оголошення методу наступна

public String toString();

Приклад.

// Метод toString() - отримати представлення символьного значення
// як тип String

// 1. Створити об'єкт типу Character
Character objC = '8';

// 2. Викликати метод toString()
String resStr;
resStr = objC.toString(); // resStr = "8" - рядок

 

6. Константа BYTES. Зчитати розмір типу

З допомогою константи BYTES можна отримати розмір в байтах значення типу char, який представлений в поточному об’єкті в беззнаковій (unsigned) двійковій нормі.

Згідно з документацією Java, константа оголошується як

public static final int BYTES;

Приклад.

// Константа BYTES - отримати розмір типу char в байтах

// 1. Створити об'єкт типу Character
Character objC = '+';

// 2. Викликати константу BYTES
int size = objC.BYTES; // size = 2

 

7. Константа MAX_RADIX. Максимальне значення системи числення

Константа MAX_RADIX повертає максимальне значення системи числення, яке є доступне для перетворення в рядки і навпаки. Згідно з документацією Java оголошення константи має вигляд

public static final int MAX_RADIX;

Приклад.

// Константа MAX_RADIX - отримати максимальне значення
// системи зчислення

// 1. Створити об'єкт типу Character
Character objC = 'T';

// 2. Викликати константу MAX_RADIX
int maxR = objC.MAX_RADIX; // maxR = 36

 

8. Константа MAX_VALUE. Максимально-допустиме значення типу char

Константа MAX_VALUE має оголошення

public static final char MAX_VALUE;

і повертає максимальне значення типу char, яке рівне ‘\uFFFF’.

Приклад.

// Константа MAX_VALUE - отримати максимальне значення типу char

// 1. Створити об'єкт типу Character
Character objC = 'f';

// 2. Викликати константу MAX_VALUE
int maxV = objC.MAX_VALUE; // maxV = 65535

 

9. Константа MIN_VALUE. Мінімально-допустиме значення типу char

Константа MIN_VALUE повертає мінімально-допустиме значення типу char, яке рівне ‘\u0000’. Оголошення константи наступне:

public static final char MIN_VALUE;

Приклад.

// Константа MIN_VALUE - отримати мінімальне значення типу char

// 1. Створити об'єкт типу Character
Character objC = 'q';

// 2. Викликати константу MIN_VALUE
int minV = objC.MIN_VALUE; // minV = 0

 

10. Константа SIZE. Розмір типу в бітах

З допомогою константи SIZE можна визначити розмір значення типу char в бітах, яке рівне 16. Оголошення константи наступне

public static final int SIZE

Приклад.

// Константа SIZE - розмір char-значення в бітах

// 1. Створити об'єкт типу Character
Character objC = '%';

// 2. Викликати константу SIZE
int size = objC.SIZE; // size = 16

 

11. Константа TYPE. Тип в класі

Тип, що інкапсульований в класі Character, визначений у константі TYPE. Ця константа має наступне оголошення

public static final Class<Character> TYPE

Приклад.

// 1. Викликати константу TYPE
Class<Character> tp = Character.TYPE; // tp = char

 

12. Статичний метод compare(). Порівняти два значення типу char

Метод compare() є статичним і використовується для порівняння будь-яких двох значень типу char. Порівнюються коди цих значень. Загальна форма оголошення методу наступна:

public static int compare(char x, char y);

Метод повертає 0, якщо значення x та y рівні. Метод повертає значення менше 0, якщо x<y. Тут мається на увазі порівняння коду символу x з кодом символу y. Метод повертає значення більше 0, якщо x>y. Знову ж таки порівнюються коди символів.

Формула обчислення різниці між x та y наступна:

Character.valueOf(x).compareTo(Character.valueOf(y));

Приклад.

// Метод compare() - порівняти коди символів

// 1. Порівняти коди символів, що взяті в оболонку Character
Character objC1 = 'k';
Character objC2 = 'm';

// 2. Викликати метод compare()
int result = Character.compare(objC1, objC2); // result = -2

// 3. Виклик compare() для примітивних типів
char c = 'k';
result = Character.compare(c, objC1); // result = 0
result = Character.compare('8', '4'); // result = 4

 

13. Статичний метод digit(). Повернути числове значення символу в заданій системі числення

Статичний метод digit() повертає значення символу типу char в заданій системі числення.

Загальна форма оголошення методу

public static int digit(char ch, int radix);

тут

  • ch – символ, який потрібно конвертувати в числове представлення;
  • radix – система числення. Значення radix повинно бути в межах від MIN_RADIX до MAX_RADIX.

Якщо значення radix виходить за межі, то функція повертає -1. Якщо значення символу ch не є стійкою цифрою, то функція повертає -1. Під стійкою цифрою мається на увазі цифра (або буква), яка входить в множину цифр заданої системи числення radix.

Наприклад, у 16-й системі числення є наступна множина цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Якщо задати ch=’K’, то функція поверне -1.

Приклад.

// Метод digit() - отримати числове представлення символу
// в заданій системі числення

// 1. Використання методу для екземпляру типу Character
Character objC = '8';

// Число 8 у десятковій системі числення
int res = Character.digit(objC, 10); // res = 8

// Число 8 у десятковій системі числення
res = Character.digit(objC, 2); // res = -1 - це є помилка

// 2. Використання методу для типу char
// Число 5 у системі числення з основою 7
res = Character.digit('5', 7); // res = 5

// Число F у системі числення з основою 16
res = Character.digit('F', 16); // res = 15

// Число F у системі числення з основою 10
res = Character.digit('F', 10); // res = -1 - помилка

 

14. Статичний метод forDigit(). Визначити символьне представлення числа в заданій системі числення

Даний метод дозволяє отримати символ на основі його числового представлення в заданій системі числення. Метод виконує обернену фунцкцію по відношенню до методу digit().

Загальна форма оголошення методу

public static char forDigit(int digit, int radix);

тут

  • digit – ціле число, що є значенням в системі числення radix;
  • radix – система числення, в якій конвертується число digit у результуючий символ. Значення radix повинно бути в межах від MIN_RADIX до MAX_RADIX.

Якщо число digit не входить у множину символів системи числення radix, то повертається нульове значення ‘\u0000’. Таке саме повернення з функції, якщо значення radix некоректне.

Приклад.

// Метод forDigit() - отримати символьне представлення числа
// в заданій системі числення

// Число 10 у системі числення з основою 12
char symbol = Character.forDigit(10, 12); // symbol = 'a'

// Число 15 у системі числення з основою 16
symbol = Character.forDigit(15, 16); // symbol = 'f'

// Число 8 у системі числення 3
symbol = Character.forDigit(8, 3); // symbol = '\u0000' - помилка

// Число 12 у системі числення з основою 10
symbol = Character.forDigit(12, 10); // symbol = '\u0000' - помилка

// Число 3 у системі числення з основою 10
symbol = Character.forDigit(3, 10); // symbol = '3'

 

15. Метод reverseBytes(). Реверсувати байти в значенні типу char

Статичний метод reverseBytes() повертає вхідне значення char, в якому байти представлені в зворотному порядку. Згідно з документацією Java оголошення методу має такий вигляд

public static char reverseBytes(char ch);

тут

  • ch – значення, байти якого потрібно представити у зворотному порядку.

Приклад.

// Метод reverseBytes() - отримати обернене значення типу char

char c1 = '\u3800';
char c2 = Character.reverseBytes(c1); // c2 = '\u0038' = '8'
System.out.println("c2 = " + c2); // c2 = 8

 

16. Метод valueOf(). Отримати екземпляр типу Character

Метод valueOf() повертає екземпляр типу Character на основі значення типу char. Загальний синтаксис оголошення методу наступний:

public static Character valueOf(char c)

тут

  • c – символ, який потрібно обернути в оболонку типу Character.

Приклад.

// Метод valueOf() - отримати екземпляр типу Character
Character objC = Character.valueOf('x');

char ch = objC.charValue(); // ch = 'x'

 


Споріднені теми