Java - Character getDirectionality() 方法



描述

Java 的Character getDirectionality() 方法將檢索給定字元的 Unicode 雙向屬性。

字元方向性用於計算文字的視覺順序。例如,一些語言,如英語,是從左到右書寫的;而其他文字,如阿拉伯語和烏爾都語,是從右到左書寫的。但是,阿拉伯文字並不總是從右到左書寫,數字和數學日期等是從左到右書寫的。在這種情況下,此方法有助於確定字元的方向性。

注意:未定義字元值的 directionality 值為 DIRECTIONALITY_UNDEFINED。

語法

以下是 Java Character getDirectionality() 方法的語法

public static byte getDirectionality(char ch)
or,
public static byte getDirectionality(int codePoint)

引數

  • ch − 請求方向性屬性的字元

  • codePoint − 請求方向性屬性的碼點

返回值

此方法返回字元值的 directionality 屬性。返回型別為 byte。

獲取給定字元的 Unicode 方向性屬性示例

以下示例顯示了 Java Character getDirectionality() 方法的使用方法。在此示例中,我們建立了兩個 char 變數,並分別為它們分配了 char 值和 unicode 值。現在,使用 getDirectionality() 方法,我們獲取 char 值的方向性,並將結果打印出來。

package com.tutorialspoint;

public class CharacterDemo {
   public static void main(String[] args) {

      // create 2 character primitives ch1, ch2
      char ch1, ch2;

      // assign values to ch1, ch2
      ch1 = 'M';
      ch2 = '\u06ff';

      // create 2 byte primitives b1, b2
      byte b1, b2;

      // assign directionality of ch1, ch2 to b1, b2
      b1 = Character.getDirectionality(ch1);
      b2 = Character.getDirectionality(ch2);

      /**
      *  byte value 0 represents DIRECTIONALITY_LEFT_TO_RIGHT
      *  byte value 2 represents DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC
      */

      String str1 = "Directionality of " + ch1 + " is " + b1;
      String str2 = "Directionality of ch2 is " + b2;

      // print b1, b2 values
      System.out.println( str1 );
      System.out.println( str2 );
   }
}

輸出

讓我們編譯並執行上面的程式,這將產生以下結果:

Directionality of M is 0 
Directionality of ch2 is 2

獲取特殊字元的 Unicode 方向性屬性示例

以下示例顯示了 Java Character getDirectionality() 方法的使用方法。在此示例中,我們建立了兩個 char 變數,並分別為它們分配了 char 值和 unicode 值。現在,使用 getDirectionality() 方法,我們獲取 char 值的方向性,並將結果打印出來。

package com.tutorialspoint;

public class CharacterDemo {
   public static void main(String[] args) {
      char ch1 = '%';
      char ch2 = '&';
      byte b1 = Character.getDirectionality(ch1);
      byte b2 = Character.getDirectionality(ch2);
      System.out.println("Directionality of " + ch1 + " is " + b1);
      System.out.println("Directionality of ch2 is " + b2);
   }
}

輸出

編譯並執行上述程式後的輸出如下:

Directionality of % is 5
Directionality of ch2 is 13

獲取碼點的 Unicode 方向性屬性示例

以下示例顯示了 Java Character getDirectionality() 方法的使用方法。在此示例中,我們建立了兩個 int 變數,並分別為它們分配了十六進位制整數值。現在,使用 getDirectionality() 方法,我們獲取碼點值的 directionality,並將結果打印出來。

package com.tutorialspoint;

public class CharacterDemo {
   public static void main(String[] args) {
      int cp1, cp2;
      cp1 = 0x2323;
      cp2 = 0x2c60;
      byte b1, b2;
      b1 = Character.getDirectionality(cp1);
      b2 = Character.getDirectionality(cp2);
      System.out.println("Directionality of cp1 is " + b1);
      System.out.println("Directionality of cp2 is " + b2);
   }
}

輸出

讓我們編譯並執行上面的程式,這將產生以下結果:

Directionality of cp1 is 13
Directionality of cp2 is 0

獲取碼點和字元的 Unicode 方向性屬性示例

以下示例顯示了 Java Character getDirectionality() 方法的使用方法。在此示例中,我們建立了兩個 int 變數,並分別為它們分配了十六進位制整數值和一個字元。現在,使用 getDirectionality() 方法,我們獲取碼點值的 directionality,並將結果打印出來。

package com.tutorialspoint;

public class Demo {
   public static void main(String[] args) {
      int cp1;
      char ch1;
      cp1 = 0x2323;
      ch1 = 'y';
      byte b1, b2;
      b1 = Character.getDirectionality(cp1);
      b2 = Character.getDirectionality(ch1);
      System.out.println("Directionality of cp1 is " + b1);
      System.out.println("Directionality of cp2 is " + b2);
   }
}

輸出

如果我們編譯並執行上面的程式,則輸出將顯示為:

Directionality of cp1 is 13
Directionality of cp2 is 0
java_lang_character.htm
廣告