-1

ここにいくつかのコードがあります:

   private static final char low = 'a';
   private static final char high = 'z';
   private static final int arrayLength = high - low + 1;

arrayLength は 26 になると思いますが、よくわかりません。これは正しいです?2 番目の質問は、「a」と「A」の数値の差は何ですか? Character クラスで getNumericValue() メソッドを使用して両方の文字をテストした場合:

  String element = "a";
  int x = Character.getNumericValue(element.charAt(0));

「a」と「A」の両方をテストしたところ、どちらも 10 でした。したがって、一般的に、文字の数値について混乱しています。お知らせ下さい。

4

4 に答える 4

1

Character.getNumericValue()は、数字または記号の値を取得するためのものです。たとえば、Character.getNumericValue('7')は 7 を返します。16 進数の数字と同様に、このメソッドは、または 10aの 16 進数値を返します。a

の Unicode 値についてはa(int) 'a'またはを実行し(int) "a".charAt(0)ます。**

(** これはアストラル界の Unicode 文字では機能しませんが、まれです。)

于 2013-11-09T21:27:27.223 に答える
0

getNumericalValue() の javaDoc をわざわざ読まなかったので、リンクを追加し、Aとの両方の数値aが 10 であることを伝えます。

于 2013-11-09T21:27:46.907 に答える
0

m8でテストすることもできます

public class Main {

private static final char low = 'a';
private static final char high = 'z';
private static final int arrayLength = high - low + 1;

    public static void main(String [ ] args) {

        System.out.println("a: "+Character.getNumericValue(low));
        System.out.println("z: "+Character.getNumericValue(high));
        System.out.println("The arrayLenght is: "+arrayLength);
   } 
}

コンソール出力:

あ:10

ズ:35

arrayLength は次のとおりです: 26

于 2013-11-09T21:30:32.790 に答える
0
Character.getNumericValue(char);

このような作業 char 0 から 9 はint 0 から 9 を返しますchar a (または) A から z (または) Z は 10 から 35 を返します。つまり、 Alphanumericを意味します。およびユニコードも含まれます。その他の char 値は -1 を返します。

于 2013-11-09T21:34:09.733 に答える