使用字元字面量儲存 Unicode 字元的 Java 程式


Unicode 是一種國際字元集,包含來自全球多種語言的大量字元、符號和文字。Java 程式語言作為一種平臺無關的語言,內建支援 Unicode 字元,允許開發者建立能夠與多種語言和文字無縫工作的應用程式。

在 Java 中,char 資料型別用於儲存 Unicode 字元,字元字面量用於在原始碼中表示這些字元。字元字面量是用單引號 (' ') 括起來的單個 Unicode 字元,可以直接賦值給 char 變數。

演算法

  • 步驟 1 − 宣告一個 char 變數。

    • 宣告一個 char 變數,並使用合適的名稱。

    • 例如:char myChar;

  • 步驟 2 − 將 Unicode 字元字面量賦值給變數。

    • 將用單引號括起來的 Unicode 字元字面量賦值給 char 變數。

    • 例如:myChar = '\u0041';(將 Unicode 字元 'A' 賦值給 myChar)

  • 步驟 3 − (可選)執行操作或處理 Unicode 字元。

    • 根據程式需要,對儲存在 char 變數中的 Unicode 字元執行任何操作或處理。

  • 步驟 4 − 列印儲存的 Unicode 字元。

    • 使用 System.out.println() 方法列印儲存在 char 變數中的 Unicode 字元。

    • 例如:System.out.println("Stored character: " + myChar);(在控制檯中列印“Stored character: A”)

方法

在 Java 中處理 Unicode 字元有兩種方法:使用 Unicode 轉義序列和直接儲存 Unicode 字元。

第一種方法涉及使用轉義序列表示 Unicode 字元,當字元無法直接在 Java 程式碼中輸入或顯示時很有用。第二種方法涉及直接將 Unicode 字元儲存在變數中,當字元可以直接輸入或顯示時更方便。

方法的選擇取決於程式的具體要求。但是,一般來說,當字元可以直接輸入或顯示時,方法 2 更簡單方便;而當字元無法直接輸入或顯示時,方法 1 是必要的。

方法 1:使用 Unicode 轉義序列

在 Java 中儲存 Unicode 字元的一種方法是使用 Unicode 轉義序列。轉義序列是一系列表示特殊字元的字元。在 Java 中,Unicode 轉義序列以字元 '\u' 開頭,後跟四個十六進位制數字,表示所需字元的 Unicode 程式碼點。

public class UnicodeCharacterLiteral {
   public static void main (String[]args)
   {   		 
      //Unicode escape sequence
      char unicodeChar = '\u0041';
      // point for 'A'
      System.out.println("Stored Unicode Character: " + unicodeChar);
   }
}

輸出

Stored Unicode Character: A

在上面的程式碼片段中,Unicode 轉義序列 '\u0041' 代表字元 'A'。轉義序列被賦值給 char 變數 unicodeChar,然後將儲存的字元列印到控制檯。

方法 2:直接儲存 Unicode 字元

或者,您可以透過將 Unicode 字元用單引號括起來直接將其儲存在 char 變數中。但是,對於無法使用鍵盤直接輸入或不可見的字元(例如控制字元),這種方法可能不可行。

public class UnicodeCharacterLiteral {
   public static void main(String[] args) { // Storing Unicode character directly
      char unicodeChar = 'A';
      // Directly storing the character 'A'
      System.out.println("Stored Unicode Character: " + unicodeChar);
   }
}

輸出

Stored Unicode Character: A

在這個例子中,字元 'A' 直接用單引號括起來並賦值給 char 變數 unicodeChar。然後將儲存的字元列印到控制檯。

工作示例 1:儲存和列印各種 Unicode 字元

public class UnicodeCharacterExamples {
   public static void main(String[] args) {
      // Storing Unicode characters using escape sequences
      char letterA = '\u0041';
      char letterSigma = '\u03A3';
      char copyrightSymbol = '\u00A9';
      // Storing Unicode characters directly
      char letterZ = 'Z';
      char letterOmega = 'Ω';
      char registeredSymbol = '®';
      // Printing the stored Unicode characters
      System.out.println("Stored Unicode Characters using Escape Sequences:");
      System.out.println("Letter A: " + letterA);
      System.out.println("Greek Capital Letter Sigma: " + letterSigma);
      System.out.println("Copyright Symbol: " + copyrightSymbol);
      System.out.println("\nStored Unicode Characters Directly:");
      System.out.println("Letter Z: " + letterZ);
      System.out.println("Greek Capital Letter Omega: " + letterOmega);
      System.out.println("Registered Symbol: " + registeredSymbol);
   }
}

輸出

Stored Unicode Characters using Escape Sequences:
Letter A: A
Greek Capital Letter Sigma: Σ
Copyright Symbol: ©

Stored Unicode Characters Directly:
Letter Z: Z
Greek Capital Letter Omega: Ω
Registered Symbol: ®

工作示例 2:處理 Unicode 字元

此示例演示如何處理儲存的 Unicode 字元。它計算大寫字母 'A' 和小寫字母 'a' 之間的差值,並使用該差值來計算大寫字母 'C'。然後,它透過向大寫字母 'C' 的 Unicode 程式碼點新增 32 來計算小寫字母 'c'。處理後的 Unicode 字元將列印到控制檯。

public class UnicodeCharacterManipulation {
   public static void main(String[] args) {
      // Storing Unicode characters using escape sequences
      char letterA = '\u0041';
      char letterSmallA = '\u0061';
      // Storing Unicode characters directly
      char letterB = 'B';
      char letterSmallB = 'b';
      // Manipulating the stored Unicode characters
      int difference = letterA - letterSmallA;
      char letterC = (char) (letterB + difference);
      char letterSmallC = (char) (letterC + 32);
      // Printing the manipulated Unicode characters
      System.out.println("Manipulated Unicode Characters:");
      System.out.println("Difference between A and a: " + difference);
      System.out.println("Calculated Letter C: " + letterC);
      System.out.println("Calculated Letter c: " + letterSmallC);
   }
}

輸出

Manipulated Unicode Characters:
Difference between A and a: -32
Calculated Letter C: C
Calculated Letter c: c

結論

在 Java 中,您可以使用字元字面量來儲存 Unicode 字元,方法是使用 Unicode 轉義序列或直接將字元用單引號括起來。這兩種方法各有優缺點。轉義序列提供了一種一致的方法來表示原始碼中的任何 Unicode 字元,而直接儲存字元在處理易於輸入或顯示的字元時更方便。

本文提供了一種在 Java 中儲存 Unicode 字元的演算法,討論了兩種儲存這些字元的不同方法,並演示了每種方法的工作示例。瞭解這些技術將幫助開發者建立能夠與多種語言和文字無縫工作的應用程式,從而充分利用 Java 程式設計中 Unicode 的強大功能。

更新於:2023年7月19日

2K+ 瀏覽量

啟動您的 職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.