Java—— Character 類
一. Character 類
Character 類用於對單個字元進行操作。
Character 類在物件中包裝一個基本型別 char 的值。
public class Test{ public static void main( String args[]) { char ch = 'c'; char uniChar = '\u0391'; char[] charArray = {'a','b','c'}; System.out.println(uniChar); // A } }
然而,在實際開發過程中,我們經常會遇到需要使用物件,而不是內建資料型別的情況。為了解決這個問題,Java 語言為內建資料型別 char 提供了包裝類 Character 類。
可以使用 Character 的構造方法建立一個 Character 類物件,例如:
Character ch = new Character('a');
在某些情況下,Java編譯器會自動建立一個 Character 物件。
例如,將一個char型別的引數傳遞給需要一個Character型別引數的方法時,那麼編譯器會自動地將char型別引數轉換為Character物件。 這種特徵稱為裝箱,反過來稱為拆箱。
public class Test{
public static void main( String args[]) {
// 原始字元 ‘c’ 裝箱到 Character 物件 ch 中
Character ch = 'c';
char c = ch;
System.out.println(c);
}
}
二. 轉義字元
轉義序列 | 描述 |
---|---|
\t | 在文中該處插入一個tab鍵 |
\b | 在文中該處插入一個後退鍵 |
\n | 在文中該處換行 |
\r | 在文中該處插入回車 |
\f | 在文中該處插入換頁符 |
\' | 在文中該處插入單引號 |
\" | 在文中該處插入雙引號 |
\\ | 在文中該處插入反斜槓 |
回車 \r :游標重新回到本行開頭。
換行 \n:游標往下一行(不一定到下一行行首)。
針對不同的系統的換行符:
- 蘋果系統Mac \r
- Unix、Linux系統 \n
- Windows系統 \r\n
eclipse 中 \r 、\n 作用一樣;
System.out.print("abcd\refghi");
eclipse 輸出結果:
abcd
efghi
dos 執行結果:
efghi
三. Character 方法
1. isLetter()
用於判斷指定字元是否為字母。
語法:
boolean isLetter(char ch)
返回值:
如果字元為字母,則返回 true;否則返回 false。
2. isDigit()
法用於判斷指定字元是否為數字。
語法:
boolean isDigit(char ch)
返回值:
如果字元為數字,則返回 true;否則返回 false。
3. isLetterOrDigit(char ch)
確定指定字元是否為字母或數字。
4. isWhitespace()
用於判斷指定字元是否為空白字元,空白符包含:空格、tab鍵、換行符。
語法:
boolean isWhitespace(char ch)
返回值:
如果字元為空白字元,則返回 true;否則返回 false。
public class Test{
public static void main( String args[]) {
System.out.println(Character.isLetter('c')); // true
System.out.println(Character.isLetter('5')); // false
System.out.println(Character.isDigit('c')); // false
System.out.println(Character.isDigit('5')); // true
System.out.println(Character.isLetterOrDigit('5')); // true
System.out.println(Character.isLetterOrDigit('c')); // true
System.out.println(Character.isLetterOrDigit('#')); // false
System.out.println(Character.isWhitespace('c')); // false
System.out.println(Character.isWhitespace(' ')); // true
System.out.println(Character.isWhitespace('\n')); // true
System.out.println(Character.isWhitespace('\t')); // true
}
}
5. isUpperCase()
用於判斷指定字元是否為大寫字母。
語法:
boolean isUpperCase(char ch)
引數:
-
ch -- 要測試的字元。
返回值:
如果字元為大寫,則返回 true;否則返回 false。
6. isLowerCase()
用於判斷指定字元是否為小寫字母。
語法:
boolean isLowerCase(char ch)
返回值:
如果字元為小寫,則返回 true;否則返回 false。
public class Test{
public static void main( String args[]) {
System.out.println(Character.isUpperCase('C')); // true
System.out.println(Character.isUpperCase('c')); // false
System.out.println(Character.isUpperCase('5')); // false
System.out.println(Character.isLowerCase('C')); // false
System.out.println(Character.isLowerCase('c')); // true
}
}
7. toUpperCase()
用於將小寫字元轉換為大寫。
語法:
char toUpperCase(char ch)
引數:
-
ch -- 要轉換的字元。
返回值:
返回轉換後字元的大寫形式,如果有的話;否則返回字元本身。
8. toLowerCase()
用於將大寫字元轉換為小寫。
語法:
char toLowerCase(char ch)
返回值:
返回轉換後字元的小寫形式,如果有的話;否則返回字元本身。
public class Test{
public static void main( String args[]) {
System.out.println(Character.toUpperCase('a')); // A
System.out.println(Character.toUpperCase('A')); // A
System.out.println(Character.toLowerCase('a')); // a
System.out.println(Character.toLowerCase('A')); // a
}
}
9. toString()
用於返回一個表示指定 char 值的 String 物件。結果是長度為 1 的字串,僅由指定的 char 組成。
語法:
String toString(char ch)
引數:
-
ch -- 要轉換的字元。
返回值:
返回指定 char 值的字串表示形式。
public class Test{
public static void main( String args[]) {
String str = Character.toString('C');
// String str2 = 'c'; 錯誤
String st = new String("c"); // 注意是 "c" 不是 'c'
System.out.println(st); // c
System.out.println(Character.toString('a')); // a
}
}