、なぜjavaのintパラメータはパスのchar値を受け入れますが、charパラメータは受け入れられませんpass int value?私はJavaのメソッドを宣言すると
はなぜJavaのint型のパラメータが渡されたchar値
を受け入れないが、char型のパラメータが渡されたint値を受け入れていないのですか?例えば
:
// method which : int parameter
public static void printInt(int input) {
System.out.println(input);
}
// method which : char parameter
public static void printChar(char input) {
System.out.println(input);
}
// main
System.out.println("----------------------------------------");
printInt('a'); // print 97 [number of ASCII char 'a']
// int parameter accept char value
printChar(97); // compilation error
// char parameter NOT accept int value
System.out.println("----------------------------------------");
@khelwoodそれは 'int'が持つ値の範囲を超えて' char'よりも「広い」と考えられるからです。注意:32ビットの 'float'は64ビットの' long'よりも広いです。 –