誰か助けてくれませんか?私は Java プログラミングにまったく慣れていないので、アルファベットの代わりに数字で操作 (2 つの数字の一致など) を実行できるように、アルファベットを数字として表す必要があります。B = 2; c = 3;...どうもありがとう
3867 次
3 に答える
3
System.out.println((int)'A');
65が返されます(AのASCIIコードは65です)
System.out.println((int)'A' - 64);
数値を 1 にオフセットします。
上記の方法を使用して下位の 'a' も 1 に出力したい場合は、単にCharacter.toUppserCase('a')
;で大文字に変換します。
于 2012-11-20T18:28:37.870 に答える
2
次のような会話メソッドを作成します。
public class Test {
public static void main(String[] args) {
Test t = new Test();
System.out.println(t.alphabetToNumber('A'));
System.out.println(t.numberToAlphabet(1));
}
public int alphabetToNumber(char a) {
return a - 64;
}
public char numberToAlphabet(int i) {
return (char) (i + 64);
}
}
于 2012-11-20T18:30:08.660 に答える
2
あなたがプログラミングに不慣れであることを考えると、ASCII Codeと呼ばれるものがあることを知っておく必要があります。このコードは、どの文字がどのようにエンコードされているかを示します。ご覧のとおり、文字「a」は数字の 97 で表されます。したがって、Java ではこれが
System.out.println((char)(97));
文字「a」を出力します。(char)
いわゆるキャストです。つまり、数字の 97 は文字として表示されるように「強制」されています。逆にできること
System.out.println((int)'a');
これにより、文字 'a' が ASCII 数値 97 として表示されます。
したがって、a から z までの文字を 1-26 で表現したい場合は、次のようにする必要があります。
char yourChar = 'z';
int yourCharInt = (int)yourChar - (int)'a' + 1;
于 2012-11-20T18:36:23.313 に答える