3

Currency.java ファイルには次の行があります。

    private static final int A_TO_Z = ('Z' - 'A') + 1;

これはどういう意味ですか?私は前にこれを見ませんでした。A_TO_Z の値と、数値の代わりに「Z」を使用する理由。

4

4 に答える 4

4

この式では、文字自体の代わりに文字の Unicode 値を使用して、chars を s として扱います。int

'Z' - 'A' + 1

となります

90 - 65 + 1 (=26)
于 2013-05-15T14:29:29.723 に答える
3

'Z'の整数値を持つ char です90
'A'の整数値を持つ char です65

90 - 65 + 1 = 26

于 2013-05-15T14:30:07.293 に答える
1

文字には、文字テーブルの値に応じた数値があります。この式は、A から Z までのすべての文字が基礎となるエンコーディング テーブルに連続した値を持っているという事実を利用しているため、最後の値から最初の値を引く ( + 1) ことで、英語のアルファベットの長さが得られます。この場合、実際の数値は重要ではなく、コードは読者にとって多かれ少なかれ自明です。使用されているエンコーディングによって文字の広がり方が異なる場合、表現が正しくなくなります。

于 2013-05-15T14:32:32.667 に答える