
Java 教程
- Java - 首頁
- Java - 概述
- Java - 歷史
- Java - 特性
- Java 與 C++
- JVM - Java 虛擬機器
- Java - JDK 與 JRE 與 JVM
- Java - Hello World 程式
- Java - 環境設定
- Java - 基本語法
- Java - 變數型別
- Java - 資料型別
- Java - 型別轉換
- Java - Unicode 系統
- Java - 基本運算子
- Java - 註釋
- Java - 使用者輸入
- Java - 日期和時間
Java 控制語句
- Java - 迴圈控制
- Java - 決策制定
- Java - If-else
- Java - Switch
- Java - For 迴圈
- Java - For-Each 迴圈
- Java - While 迴圈
- Java - do-while 迴圈
- Java - Break
- Java - Continue
面向物件程式設計
- Java - OOPs 概念
- Java - 物件和類
- Java - 類屬性
- Java - 類方法
- Java - 方法
- Java - 變數作用域
- Java - 建構函式
- Java - 訪問修飾符
- Java - 繼承
- Java - 聚合
- Java - 多型
- Java - 重寫
- Java - 方法過載
- Java - 動態繫結
- Java - 靜態繫結
- Java - 例項初始化塊
- Java - 抽象
- Java - 封裝
- Java - 介面
- Java - 包
- Java - 內部類
- Java - 靜態類
- Java - 匿名類
- Java - 單例類
- Java - 包裝類
- Java - 列舉
- Java - 列舉建構函式
- Java - 列舉字串
Java 內建類
Java 檔案處理
Java 錯誤和異常
- Java - 異常
- Java - try-catch 塊
- Java - try-with-resources
- Java - 多重捕獲塊
- Java - 巢狀 try 塊
- Java - Finally 塊
- Java - throw 異常
- Java - 異常傳播
- Java - 內建異常
- Java - 自定義異常
Java 多執行緒
- Java - 多執行緒
- Java - 執行緒生命週期
- Java - 建立執行緒
- Java - 啟動執行緒
- Java - 合併執行緒
- Java - 執行緒命名
- Java - 執行緒排程器
- Java - 執行緒池
- Java - 主執行緒
- Java - 執行緒優先順序
- Java - 守護執行緒
- Java - 執行緒組
- Java - 關閉鉤子
Java 同步
Java 網路
- Java - 網路
- Java - 套接字程式設計
- Java - URL 處理
- Java - URL 類
- Java - URLConnection 類
- Java - HttpURLConnection 類
- Java - Socket 類
- Java - 泛型
Java 集合
Java 介面
Java 資料結構
Java 集合演算法
高階 Java
- Java - 命令列引數
- Java - Lambda 表示式
- Java - 傳送電子郵件
- Java - Applet 基礎
- Java - Javadoc 註釋
- Java - 自動裝箱和拆箱
- Java - 檔案不匹配方法
- Java - REPL (JShell)
- Java - 多版本 Jar 檔案
- Java - 私有介面方法
- Java - 內部類菱形運算子
- Java - 多解析度影像 API
- Java - 集合工廠方法
- Java - 模組系統
- Java - Nashorn JavaScript
- Java - Optional 類
- Java - 方法引用
- Java - 函式式介面
- Java - 預設方法
- Java - Base64 編碼解碼
- Java - Switch 表示式
- Java - Teeing 收集器
- Java - 微基準測試
- Java - 文字塊
- Java - 動態 CDS 歸檔
- Java - Z 垃圾收集器 (ZGC)
- Java - 空指標異常
- Java - 打包工具
- Java - 密封類
- Java - 記錄類
- Java - 隱藏類
- Java - 模式匹配
- Java - 緊湊數字格式化
- Java - 垃圾回收
- Java - JIT 編譯器
Java 雜項
- Java - 遞迴
- Java - 正則表示式
- Java - 序列化
- Java - 字串
- Java - 程序 API 改進
- Java - 流 API 改進
- Java - 增強的 @Deprecated 註解
- Java - CompletableFuture API 改進
- Java - 流
- Java - 日期時間 API
- Java 8 - 新特性
- Java 9 - 新特性
- Java 10 - 新特性
- Java 11 - 新特性
- Java 12 - 新特性
- Java 13 - 新特性
- Java 14 - 新特性
- Java 15 - 新特性
- Java 16 - 新特性
Java API 和框架
Java 類參考
- Java - Scanner
- Java - 陣列
- Java - 字串
- Java - Date
- Java - ArrayList
- Java - Vector
- Java - Stack
- Java - PriorityQueue
- Java - LinkedList
- Java - ArrayDeque
- Java - HashMap
- Java - LinkedHashMap
- Java - WeakHashMap
- Java - EnumMap
- Java - TreeMap
- Java - IdentityHashMap
- Java - HashSet
- Java - EnumSet
- Java - LinkedHashSet
- Java - TreeSet
- Java - BitSet
- Java - Dictionary
- Java - Hashtable
- Java - Properties
- Java - Collection
- Java - Array
Java 有用資源
Java - 字元類
通常,當我們處理字元時,我們使用基本資料型別 char。
示例
char ch = 'a'; // Unicode for uppercase Greek omega character char uniChar = '\u039A'; // an array of chars char[] charArray ={ 'a', 'b', 'c', 'd', 'e' };
Java 中 Character 類的使用
但是,在開發過程中,我們會遇到需要使用物件而不是基本資料型別的情況。為了實現這一點,Java 為基本資料型別 char 提供了包裝類Character。
Java Character 類
Character 類提供了一些有用的類(即靜態)方法來操作字元。您可以使用 Character 建構函式建立 Character 物件 -
Character ch = new Character('a');
在某些情況下,Java 編譯器也會為您建立 Character 物件。例如,如果您將一個基本 char 傳遞給一個期望物件的方法,編譯器會自動將 char 轉換為 Character。如果轉換反過來進行,則此功能稱為自動裝箱或拆箱。
Java Character 類的示例
// Here following primitive char 'a' // is boxed into the Character object ch Character ch = 'a'; // Here primitive 'x' is boxed for method test, // return is unboxed to char 'c' char c = test('x');
轉義序列
以反斜槓 (\) 開頭的字元是轉義序列,對編譯器具有特殊含義。
換行符 (\n) 在本教程中已在 System.out.println() 語句中頻繁使用,以在字串列印後換行。
下表顯示了 Java 轉義序列 -
轉義序列 | 描述 |
---|---|
\t | 在此處插入製表符。 |
\b | 在此處插入退格鍵。 |
\n | 在此處插入換行符。 |
\r | 在此處插入回車符。 |
\f | 在此處插入換頁符。 |
\' | 在此處插入單引號字元。 |
\" | 在此處插入雙引號字元。 |
\\ | 在此處插入反斜槓字元。 |
當在列印語句中遇到轉義序列時,編譯器會相應地解釋它。
示例:轉義序列
如果要將引號放在引號內,則必須在內部引號上使用轉義序列 \" -
public class Test { public static void main(String args[]) { System.out.println("She said \"Hello!\" to me."); } }
輸出
She said "Hello!" to me.
字元類
宣告
以下是java.lang.Character類的宣告 -
public final class Character extends Object implements Serializable, Comparable<Character>
欄位
以下是java.lang.Character類的欄位 -
static byte COMBINING_SPACING_MARK - 這是 Unicode 規範中的通用類別“Mc”。
static byte CONNECTOR_PUNCTUATION - 這是 Unicode 規範中的通用類別“Pc”。
static byte CONTROL - 這是 Unicode 規範中的通用類別“Cc”。
static byte CURRENCY_SYMBOL - 這是 Unicode 規範中的通用類別“Sc”。
static byte DASH_PUNCTUATION - 這是 Unicode 規範中的通用類別“Pd”。
static byte DECIMAL_DIGIT_NUMBER - 這是 Unicode 規範中的通用類別“Nd”。
static byte DIRECTIONALITY_ARABIC_NUMBER - 這是 Unicode 規範中的弱雙向字元型別“AN”。
static byte DIRECTIONALITY_BOUNDARY_NEUTRAL - 這是 Unicode 規範中的弱雙向字元型別“BN”。
static byte DIRECTIONALITY_COMMON_NUMBER_SEPARATOR - 這是 Unicode 規範中的弱雙向字元型別“CS”。
static byte DIRECTIONALITY_EUROPEAN_NUMBER - 這是 Unicode 規範中的弱雙向字元型別“EN”。
static byte DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR − 在 Unicode 規範中,這是弱雙向字元型別“ES”。
static byte DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR − 在 Unicode 規範中,這是弱雙向字元型別“ET”。
static byte DIRECTIONALITY_LEFT_TO_RIGHT − 在 Unicode 規範中,這是強雙向字元型別“L”。
static byte DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING − 在 Unicode 規範中,這是強雙向字元型別“LRE”。
static byte DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE − 在 Unicode 規範中,這是強雙向字元型別“LRO”。
static byte DIRECTIONALITY_NONSPACING_MARK − 在 Unicode 規範中,這是弱雙向字元型別“NSM”。
static byte DIRECTIONALITY_OTHER_NEUTRALS − 在 Unicode 規範中,這是中性雙向字元型別“ON”。
static byte DIRECTIONALITY_PARAGRAPH_SEPARATOR − 在 Unicode 規範中,這是中性雙向字元型別“B”。
static byte DIRECTIONALITY_POP_DIRECTIONAL_FORMAT − 在 Unicode 規範中,這是弱雙向字元型別“PDF”。
static byte DIRECTIONALITY_RIGHT_TO_LEFT − 在 Unicode 規範中,這是強雙向字元型別“R”。
static byte DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC − 在 Unicode 規範中,這是強雙向字元型別“AL”。
static byte DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING − 在 Unicode 規範中,這是強雙向字元型別“RLE”。
static byte DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE − 在 Unicode 規範中,這是強雙向字元型別“RLO”。
static byte DIRECTIONALITY_SEGMENT_SEPARATOR − 在 Unicode 規範中,這是中性雙向字元型別“S”。
static byte DIRECTIONALITY_UNDEFINED − 這是未定義的雙向字元型別。
static byte DIRECTIONALITY_WHITESPACE − 在 Unicode 規範中,這是中性雙向字元型別“WS”。
static byte ENCLOSING_MARK − 在 Unicode 規範中,這是通用類別“Me”。
static byte END_PUNCTUATION − 在 Unicode 規範中,這是通用類別“Pe”。
static byte FINAL_QUOTE_PUNCTUATION − 在 Unicode 規範中,這是通用類別“Pf”。
static byte FORMAT − 在 Unicode 規範中,這是通用類別“Cf”。
static byte INITIAL_QUOTE_PUNCTUATION − 在 Unicode 規範中,這是通用類別“Pi”。
static byte LETTER_NUMBER − 在 Unicode 規範中,這是通用類別“Nl”。
static byte LINE_SEPARATOR − 在 Unicode 規範中,這是通用類別“Zl”。
static byte LOWERCASE_LETTER − 在 Unicode 規範中,這是通用類別“Ll”。
static byte MATH_SYMBOL − 在 Unicode 規範中,這是通用類別“Sm”。
static int MAX_CODE_POINT − 這是 Unicode 程式碼點的最大值。
static char MAX_HIGH_SURROGATE − 在 UTF-16 編碼中,這是 Unicode 高代理對程式碼單元的最大值。
static char MAX_LOW_SURROGATE − 在 UTF-16 編碼中,這是 Unicode 低代理對程式碼單元的最大值。
static int MAX_RADIX − 這是可用於轉換為和從字串轉換的最大基數。
static char MAX_SURROGATE − 在 UTF-16 編碼中,這是 Unicode 代理對程式碼單元的最大值。
static char MAX_VALUE − 此欄位的常量值為 char 型別的最大值,'\uFFFF'。
static int MIN_CODE_POINT − 這是 Unicode 程式碼點的最小值。
static char MIN_HIGH_SURROGATE − 在 UTF-16 編碼中,這是 Unicode 高代理對程式碼單元的最小值。
static char MIN_LOW_SURROGATE − 在 UTF-16 編碼中,這是 Unicode 低代理對程式碼單元的最小值。
static int MIN_RADIX − 這是可用於轉換為和從字串轉換的最小基數。
static int MIN_SUPPLEMENTARY_CODE_POINT − 這是補充程式碼點的最小值。
static char MIN_SURROGATE − 在 UTF-16 編碼中,這是 Unicode 代理對程式碼單元的最小值。
static char MIN_VALUE − 此欄位的常量值為 char 型別的最小值,'\u0000'。
static byte MODIFIER_LETTER − 在 Unicode 規範中,這是通用類別“Lm”。
static byte MODIFIER_SYMBOL − 在 Unicode 規範中,這是通用類別“Sk”。
static byte NON_SPACING_MARK − 在 Unicode 規範中,這是通用類別“Mn”。
static byte OTHER_LETTER − 在 Unicode 規範中,這是通用類別“Lo”。
static byte OTHER_NUMBER − 在 Unicode 規範中,這是通用類別“No”。
static byte OTHER_PUNCTUATION − 在 Unicode 規範中,這是通用類別“Po”。
static byte OTHER_SYMBOL − 在 Unicode 規範中,這是通用類別“So”。
static byte PARAGRAPH_SEPARATOR − 在 Unicode 規範中,這是通用類別“Zp”。
static byte PRIVATE_USE − 在 Unicode 規範中,這是通用類別“Co”。
static int SIZE − 這是以無符號二進位制形式表示 char 值所使用的位數。
static byte SPACE_SEPARATOR − 在 Unicode 規範中,這是通用類別“Zs”。
static byte START_PUNCTUATION − 在 Unicode 規範中,這是通用類別“Ps”。
static byte SURROGATE − 在 Unicode 規範中,這是通用類別“Cs”。
static byte TITLECASE_LETTER − 在 Unicode 規範中,這是通用類別“Lt”。
static Class<Character> TYPE − 這是表示基本型別 char 的 Class 例項。
static byte UNASSIGNED − 在 Unicode 規範中,這是通用類別“Cn”。
static byte UPPERCASE_LETTER − 在 Unicode 規範中,這是通用類別“Lu”。
類建構函式
序號 | 建構函式及描述 |
---|---|
1 |
Character(char value) 這將構造一個新分配的 Character 物件,該物件表示指定的 char 值。 |
類方法
繼承的方法
此類繼承自以下類 -
- java.lang.Object
示例
以下示例演示了 Java Character charCount() 方法的使用。在此程式中,我們建立了一個 int 變數併為其分配了一個十六進位制值,該值等效於一個 char 值。然後使用 charCount() 方法,我們檢查它是否是一個有效的補充字元。然後列印結果。
package com.tutorialspoint; public class CharacterDemo { public static void main(String[] args) { // create and assign values to int codepoint cp int cp = 0x12345; // create an int res int res; // assign the result of charCount on cp to res res = Character.charCount(cp); String str1 = "It is not a valid supplementary character"; String str2 = "It is a valid supplementary character"; // print res value if ( res == 1 ) { System.out.println( str1 ); } else if ( res == 2 ) { System.out.println( str2 ); } } }
輸出
讓我們編譯並執行上述程式,這將產生以下結果 -
It is a valid supplementary character