1,public class Sample{ 2, public static void main(String[] args){ 3, short a = 97; 4, int b = 98; 5, System.out.print((char) a + ""); 6, System.out.print((char) b); 7, } 8,}
1,public class Sample{ 2, public static void main(String[] args){ 3, short a = 970; 4, int b = 98; 5, System.out.print((char) a + ""); 6, System.out.print((char) b); 7, } 8,}
上のコードを実行すると、a b と出力されました。
3行目の箇所を970と変換すると、? b と出力されました。
なぜこのような出力結果となっているのでしょうか?
キャスト式を使って、char型として出力していることは理解できるのですが、aの出力結果が?と出てしまう理由がわからないです。
ASCIIコードを調べてみては・