Как сравнивать char java
Javatpoint Services
JavaTpoint offers too many high quality services. Mail us on [email protected], to get more information about given services.
- Website Designing
- Website Development
- Java Development
- PHP Development
- WordPress
- Graphic Designing
- Logo
- Digital Marketing
- On Page and Off Page SEO
- PPC
- Content Development
- Corporate Training
- Classroom and Online Training
- Data Entry
Training For College Campus
JavaTpoint offers college campus training on Core Java, Advance Java, .Net, Android, Hadoop, PHP, Web Technology and Python. Please mail your requirement at [email protected]
Duration: 1 week to 2 week
Like/Subscribe us for latest updates or newsletter
How to Compare Characters in Java
In this tutorial, I will be sharing how to compare characters in java. Characters can be a char primitive data type or Character wrapper class. Let’s dive deep into the topic:
1. Comparing char primitives
1. Using <, >, == operators
Based on the Unicode table, the char primitive data type also has the associated integer value. Using ==, <, > operators you should be able to compare two characters just like you compare two integers.
Output:
false
true
true
2. Using Character.compare(char x, char y)
We can compare the char values numerically by using compare(char x, char y) method of Character class.
According to Java docs,
The compare(char a, char b) method of Character class returns the following values:
0, if (a == b)
value less than 0, if a < b
value greater than 0, if a > b
2. Comparing Character objects
You can compare Character class objects:
1. Using Character.compare(char x, char y)
Using Character class constructor, we can convert the char primitive value to the Character object.
Output:
1
0
-1
2. Using equals() method
Using equals() method also we can compare the Character class objects.
Output:
false
false
true
That’s all for today, please mention in comments in case you have any questions related to how to compare characters in java.
Класс Character . Обзор методов и констант. Конструктор класса
Класс Character служит оболочкой для типа char . Класс содержит конструктор, который имеет следующую общую форму:
- value – значение, передаваемое в конструктор.
Пример. Приводятся способы инициализации переменной типа Character .
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 общая форма объявления этого метода следующая:
Пример.
4. Метод compareTo() . Сравнить текущий символ с другим символом
Если нужно сравнить текущий символ с некоторым другим символом, то используется метод compareTo() . Синтаксис объявления метода следующий:
здесь anotherCharacter – другой символ, с которым сравнивается символ из текущего экземпляра.
Если символы равны, то функция возвращает 0. Если символ текущего экземпляра меньше символа anotherCharacter , то возвращается значение меньше 0. Термин «меньше» означает, что код символа текущего экземпляра меньше кода символа anotherCharacter . Если код символа текущего экземпляра больше, чем код символа, передаваемый параметром, то функция возвращает значение больше 0.
Фактически, функция возвращает разницу между кодом текущего символа и кодом символа, являющимся входным параметром.
Пример.
5. Метод toString() . Получить представление символьного значения как String
Метод toString() переопределяет одноименный метод класса Object . Метод позволяет получить строковое представление символа типа char , хранящегося в текущем экземпляре. Длина результирующей строки равна 1. Общая форма объявления метода следующая
Пример.
6. Константа BYTES . Прочитать размер типа
С помощью константы BYTES можно получить размер в байтах значения типа char, представленного в текущем объекте в беззнаковой (unsigned) двоичной норме.
Согласно документации Java, константа объявляется как
Пример.
7. Константа MAX_RADIX . Максимальное значение системы исчисления
Константа MAX_RADIX возвращает максимальное значение системы исчисления, доступное для преобразования в строки и наоборот. Согласно документации Java объявления константы имеет вид
Пример.
8. Константа MAX_VALUE . Максимально-допустимое значение типа char
Константа MAX_VALUE имеет объявление
и возвращает максимальное значение типа char , которое равно ‘\uFFFF’ .
Пример.
9. Константа MIN_VALUE . Минимально-допустимое значение типа char
Константа MIN_VALUE возвращает минимально-допустимое значение типа char , которое равно ‘\u0000’ . Объявление константы следующее:
Пример.
10. Константа SIZE . Размер типа в битах
С помощью константы SIZE можно определить размер значения типа char в битах, которое равно 16. Объявление константы следующее
Пример.
11. Константа TYPE . Тип в классе
Тип, инкапсулированный в классе Character , определен в константе TYPE . Эта константа имеет следующее объявление
Пример.
12. Статический метод compare() . Сравнить два значення типа char
Метод compare() статический и используется для сравнения любых двух значений типа char . Сравниваются коды этих значений. Общая форма объявления метода следующая:
Метод возвращает 0, если значения x и y равны.
Метод возвращает значение меньше 0, если x < y . Здесь предполагается сравнение кода символа x с кодом символа y .
Метод возвращает значение больше 0, если x > y . Опять же сравниваются коды символов.
Формула вычисления разницы между x и y следующая:
13. Статический метод digit() . Вернуть числовое значение символа в заданной системе исчисления
Статический метод digit() возвращает значение символа типа char в указанной системе исчисления.
Общая форма объявления метода
- 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.
Пример.
14. Статический метод forDigit() . Определить символьное представление числа в заданной системе исчисления
Данный метод позволяет получить символ на основе его числового представления в заданной системе счисления. Метод выполняет обратную функцию по отношению к методу digit() .
Общая форма объявления метода
- digit – целое число, что есть значением в системе счисления radix ;
- radix – система исчисления, в которой конвертируется число digit в результирующий символ
Значение radix должно быть в пределах от MIN_RADIX до MAX_RADIX .
Если число digit не входит во множество символов системы исчисления radix , то возвращается нулевое значение ‘\u0000’ . Такой же возврат из функции, если значение radix некорректно.
Пример.
15. Метод reverseBytes() . Реверсировать байты в значении типа char
Статический метод reverseBytes() возвращает входящее значение char , в котором байты представлены в обратном порядке. Согласно документации Java объявление метода следующее
- ch – значение, байты которого нужно представить в обратном порядке.
Пример.
16. Метод valueOf() . Получить экземпляр типа Character
Метод valueOf() возвращает экземпляр типа Character на основе значения типа char . Общий синтаксис объявления метода:
Сравнение символов в Java
Прошло некоторое время с тех пор, как я сделал Java, поэтому мой синтаксис не самый большой на данный момент.
Я хочу проверить переменную char — это один из 21 конкретных символов, что является самым коротким способом для этого?
Кажется, что он не работает. Мне нужно написать его так:
12 ответов
Если ваш ввод является символом, а символы, которые вы проверяете, в основном последовательны, вы можете попробовать следующее:
Однако, если ваш ввод является строкой, более компактный подход (но медленнее) заключается в использовании регулярного выражения с классом символов:
Если у вас есть символ, вам сначала нужно будет преобразовать его в строку, прежде чем вы сможете использовать регулярное выражение: