logo

Třída znaků Java

Třída Character obecně zabaluje hodnotu všech primitivních typů char do objektu. Jakýkoli objekt typu Znak může obsahovat jediné pole, jehož typ je char.

Všechna pole, metody a konstruktory třídy Character jsou specifikovány datovým souborem Unicode, který je zejména součástí databáze znaků Unicode a je spravován Unicode Consortium.

Sada znaků od U+0000 do U+FFFF je někdy známá jako základní vícejazyčná rovina (tj. BMP). Znaky, jejichž kódové body jsou větší než U+FFFF, se nazývají doplňkové znaky. Jazyk Java obecně používá metodu kódování UTF-16 k reprezentaci polí znaků v String nebo String Buffer. V tomto typu reprezentace jsou doplňkové znaky reprezentovány jako dvojice znaků, z nichž první je z rozsahu s vysokými zástupnými znaky (uD800-uDBFF) a druhý z rozsahu s nízkými zástupnými znaky (uDc00- uDBFF).

Metody

Metoda Popis
charCount(int codePoint) Určuje počet hodnot znaků, které jsou nutné k reprezentaci daného znaku.
charValue() Vrátí hodnotu daného objektu Character.
codePointAt(char[]a, int index) Vrátí codePoint pro zadaný index daného pole.
codePointAt(char[]a, int index, int limit ) Vrátí codePoint pole char na zadaném indexu, kde jsou použity pouze prvky pole s indexem menším než zadaný limit.
codePointAt(CharSequence seq, int index) Vrátí codePoint na zadaném indexu pro danou CharSequence.
codePointBefore(char[]a, int index) Vrátí codePoint pro dané pole v předchozím indexu.
codePointBefore(char[]a, int index, int start) Vrátí codePoint pro dané pole v předchozím indexu, kde jsou použity pouze prvky pole s indexem větším nebo rovným startu.
codePointBefore(CharSequence, int index) Vrátí CodePoint pro danou CharSequence v předchozím indexu.
codePointCount(char[]a, int offset, int count) Vrátí celkový počet kódových bodů Unicode v daném dílčím poli argumentu pole char.
codePointCount(CharSequence seq, int beginIndex, int endIndex) Vrátí počet kódových bodů Unicode poskytnutých v daném rozsahu textu pro zadanou sekvenci znaků.
codePointOf(název řetězce) Vrátí hodnotu codePoint pro daný znak Unicode určený názvem konkrétního znaku.
porovnat (znak x, znak y) Porovná dvě hodnoty typu znaků numericky.
porovnatTo (character othercharacter) Porovná dva objekty typu Character numericky.
číslice (char ch, int radix) Vrátí číselnou hodnotu pro daný znak v zadaném indexu.
číslice (int codePoint, int radix) Vrátí číselnou hodnotu pro daný znak v zadaném radixu.
rovná se (objekt objektu) Porovná daný objekt se zadaným objektem.
forDigit(int digit, int radix) Určuje zobrazení znaku pro konkrétní číslici v daném radixu.
getDirectionality(char ch) Vrátí vlastnost směrovosti Unicode pro zadaný znak.
getDirectionality(int codePoint) Vrátí vlastnost směrovosti Unicode pro zadaný codePoint.
getName(int codePoint) Vrátí název Unicode pro daný codePoint nebo může vrátit hodnotu null, pokud codePoint není přiřazen.
getNumericValue(char ch) Vrátí celočíselnou hodnotu typu zadaného znaku Unicode.
getNumericValue(int codePoint) Vrátí celočíselnou hodnotu typu zadaného Unicode codePoint.
getType (char ch) Vrátí hodnotu, která označuje obecnou kategorii znaku.
getType (int codePoint) Vrátí hodnotu, která označuje obecnou kategorii znaku.
hashcode() Vrátí hash kód pro zadaný znak. Tato metoda je rovna výsledku vyvolání metody charValue().
hashcode (hodnota znaku) Vrátí hash kód pro konkrétní hodnotu znaku.
highSurrogate(int codePoint) Vrátí úvodní náhradní kódový bod konkrétního náhradního páru, který představuje doplňkový znak v kódování UTF-16.
isAlphabetic(int codePoint) Určuje, zda je daný znak abeceda nebo ne.
isBmpCodePoint(int codePoint) Určuje, zda je daná postava v Základní vícejazyčné rovině nebo ne.
isDefined(char ch) Určuje, zda je znak definován v Unicode nebo ne.
isDefined(int codePoint) Určuje, zda je znak (bod v kódu Unicode) definován v Unicode nebo ne.
isDigit(char ch) Určuje, zda je daný znak číslice nebo ne.
isDigit(int codePoint) Určuje, zda daný znak (bod v kódu Unicode) je číslice nebo ne.
isHighSurrogate (char ch) Určuje, zda jsou dané hodnoty znaků kódem s vysokým zástupným kódem Unicode nebo ne.
isIndentifierIgnorable(char ch) Určuje, zda je daný znak považován za ignorovatelný znak v identifikátoru Java nebo ne.
isIndentifierIgnorable(int codePoint) Určuje, zda je daný znak (Unicode codePoint) považován za ignorovatelný znak v identifikátoru Java nebo ne.
isIdeographic(int codePoint) Určuje, zda je zadaný znak CJKV (čínský, japonský, korejský a vietnamský) ideograf či nikoli.
isISOControl(char ch) Určuje, zda je daný znak znakem ISO Control nebo ne.
isISOControl(int codePoint) Určuje, zda daný znak (bod v kódu Unicode) je nebo není řídicím znakem ISO.
isJavaIdentifierPart(char ch) Určuje, zda je daný znak součástí jiného identifikátoru Java než prvního znaku či nikoli.
isJavaIdentifierPart(int codePoint) Určuje, zda je daný znak (bod v kódu Unicode) součástí jiného identifikátoru Java než prvního znaku nebo ne.
isJavaIdentifierStart(char ch) Určuje, zda je daný znak přípustný jako první znak v identifikátoru Java nebo ne.
isJavaIdentifierStart(int codePoint) Určuje, zda daný znak (bod v kódu Unicode je přípustný jako první znak v identifikátoru Java nebo ne.
isJavaLetter(char ch) Nahrazeno isJavaIdentifierStart(char).
isJavaLetterOrDigit(int codePoint) Nahrazeno isJavaIdentifierPart(char).
isLetter(char ch) Určuje, zda je zadaný znak písmeno nebo ne.
isLetter(int codePoint) Určuje, zda zadaný znak (bod v kódu Unicode) je písmeno nebo ne.
isLetterOrDigit(char ch) Určuje, zda je zadaný znak písmeno nebo číslice či nikoli.
isLetterOrDigit(int codePoint) Určuje, zda zadaný znak (bod v kódu Unicode) je písmeno nebo číslice či nikoli.
isLowerCase(char ch) Určuje, zda je zadaný znak malým písmenem či nikoli.
isLowerCase(int codePoint) Určuje, zda je zadaný znak (bod v kódu Unicode) malým písmenem či nikoli.
isLowSurrogate(char ch) Určuje, zda je daná hodnota znaku jednotkou Unicode s nízkým náhradním kódem nebo ne.
isMirrored(char ch) Určuje, zda je postava zrcadlená nebo ne.
isMirrored(int codePoint) Určuje, zda je znak (bod kódu Unicode) zrcadlen nebo ne.
isSpace (char ch) Nahrazeno metodou isWhiteSpace(char ch).
isSpaceChar(char ch) Určuje, zda zadaný znak je znak mezery Unicode nebo ne.
isSupplementaryCodePoint(int codePoint) Určuje, zda je daný znak (bod v kódu Unicode) v rozsahu doplňkových znaků či nikoli.
isSurrogate (char ch) Určuje, zda je daná hodnota znaku jednotkou náhradního kódu Unicode.
isSurrogatePair (vysoký počet znaků, nízký počet znaků) Určuje, zda je daný pár hodnot char platným náhradním párem Unicode nebo ne.
isTitleCase(char ch) Určuje, zda daný znak je nebo není titulní znak.
isTitleCase(int codePoint) Určuje, zda je daný znak (bod v kódu Unicode) znakem nadpisu nebo ne.
isUnicodeIdentifierPart(char ch) Určuje, zda je daný znak součástí Unicode identifikátoru či nikoliv.
isUnicodeIdentifierPart(int codePoint) Určuje, zda je daný znak (bod kódu unicofde) součástí identifikátoru Unicode nebo ne.
isUnicodeIdentifierStart(char ch) Určuje, zda je daný znak přípustný jako první znak v identifikátoru Unicode nebo ne.
isUnicodeIdentifierStart(int codePoint) Určuje, zda je daný znak (bod v kódu Unicode) přípustný jako první znak v identifikátoru Unicode nebo ne.
isUpperCase(char ch) Určuje, zda je daný znak velkým písmenem či nikoliv.
isUpperCase(int codePoint) Určuje, zda daný znak (bod v kódu Unicode) je velký znak nebo ne.
isValidCodePoint(int codePoint) Určuje, zda je daný znak platnou bodovou hodnotou kódu Unicode či nikoli.
isWhitespace (char ch) Určuje, zda je daný znak prázdným místem nebo ne.
isWhitespace(int codePoint) Určuje, zda daný znak (bod v kódu Unicode) je prázdné místo nebo ne.
lowSurrogate(int codePoint) Vrátí jednotku nízkého náhradního kódu (tj. koncovou zástupnou jednotku) náhradního páru, která představuje doplňkový znak v kódování UTF-16.
offsetByCodePoints(char[]a, int start, int count, int index, int codePointOffset) Vrátí index pro dané podpole znaků, což je posun od daného indexu o body kódu codePointOffset.
offsetByCodePoints(CharSequence seq, int index, int codePointOffset) Vrátí index pro dané podpole znaků, což je posun od daného indexu o body kódu codePointOffset.
reverseBytes (char ch) Vrátí hodnotu získanou obrácením pořadí daných bajtů v zadaných hodnotách znaků.
toChars(int codePoint) Převede zadaný znak (bod kódu Unicode) na jeho reprezentaci UTF-16, která je uložena v poli znaků.
toChars(int codePoint, char[] dst, int dstIndex) Převede zadaný znak (bod v kódu Unicode) na jeho reprezentaci UTF-16.
toCodePoint (vysoký počet znaků, nízký počet znaků) Převede daný náhradní pár na odpovídající doplňkovou bodovou hodnotu kódu.
malá písmena (char ch) Převede argument typu znaku na malá písmena pomocí informací o mapování velkých a malých písmen získaných z datového souboru Unicode.
toLowerCase(int codePoint) Převede argument typu znaku (bod v kódu Unicode) na malá písmena pomocí informací o mapování velkých a malých písmen získaných z datového souboru Unicode.
toString() Vrátí objekt typu String, který představuje hodnotu znaku.
toString (char ch) Vrátí objekt typu String, který představuje zadaný znak
toTitleCase(char ch) Převede argument typu znaku na titlecase pomocí informací o mapování velkých a malých písmen získaných z datového souboru Unicode.
toTitleCase(int codePoint) Převede argument typu znaku (bod v kódu Unicode) na malá písmena pomocí informací o mapování velkých a malých písmen získaných z datového souboru Unicode.
velká písmena (char ch) Převede argument typu znaku na velká písmena pomocí informací o mapování velkých a malých písmen získaných z datového souboru Unicode.
toUpperCase(int codePoint) Převede argument typu znaku (bod v kódu Unicode) na velká písmena pomocí informací o mapování velkých a malých písmen získaných z datového souboru Unicode.
valueOf(char c) Vrátí instanci znaku, který představuje zadanou hodnotu znaku.

Příklad 1

 import java.util.Scanner; public class JavaCharacterExample1 { public static void main(String[] args) { // Ask the user for the first input. System.out.print('Enter the first input:'); // Use the Scanner class to get the user input. Scanner scanner = new Scanner(System.in); // Gets the user input. char[] value1 = scanner.nextLine().toCharArray(); int result1 = 0; // Count the characters for a specific character. for (char ch1 : value1) { result1 = Character.charCount(ch1); } // Print the result. System.out.print('The value comes to: '+result1+'
'); System.out.print('Enter the second input:'); char[] value2 = scanner.nextLine().toCharArray(); for (char ch2 : value2) { int result2 = Character.hashCode(ch2); System.out.print('The hash code for the character ''+ch2+'' is given as:'+result2+'
'); } System.out.print('Enter the third input:'); char[] value3 = scanner.nextLine().toCharArray(); for (char ch3 : value3) { boolean result3 = Character.isDigit(ch3); if(result3){ System.out.println('The character '' + ch3 + '' is a digit. '); } else{ System.out.println('The character '' + ch3 + '' is not a digit.'); } System.out.print('Enter the fourth input:'); char[] value4 = scanner.nextLine().toCharArray(); for (char ch4 : value4) { boolean result4 = Character.isISOControl(ch4); System.out.println('The fourth character ''+ch4+'' is an ISO Control:'+result4); } } } } 

Výstup:

 Enter the first input:89 The value comes to: 1 Enter the second input:J The hash code for the character 'J' is given as:74 Enter the third input:5 The character '5' is a digit. Enter the fourth input:h The fourth character 'h' is an ISO Control:false 

Příklad 2

 public class JavaCharacterExample2{ public static void main(String[] args) { // Create four char primitives ch1, ch2, ch3 and ch4. char ch1, ch2, ch3, ch4; // Assign the values to ch1, ch2, ch3 and ch4. ch1 = 'T'; ch2 = 'k'; ch3 = '
'; ch4 = 'G'; // Create four boolean primitives b1, b2, b3 and b4. boolean b1, b2, b3,b4; // Assign the results to b1, b2, b3 and b4. b1 = Character.isLetter(ch1); b2 = Character.isLowerCase(ch2); b3 = Character.isSpace(ch3); b4 = Character.isDefined(ch3); String str1 = ' The first character is a letter: ' + b1; String str2 = ' The second character is a lower-case: ' + b2; String str3 = ' The third character is for space: ' + b3; String str4 = ' The fourth character is defined in Java identifier: ' + b3; // Print the values of b1, b2, b3 and b4. System.out.println( str1 ); System.out.println( str2 ); System.out.println( str3 ); System.out.println( str3 ); } } 
Otestujte to hned

Výstup:

 The first character is a letter: true The second character is a lower-case: true The third character has a space: true The third character has a space: true