为什么这段代码总是产生'?'的输出

Man*_*mar 0 java

我们知道java遵循unicode系统,它支持多种语言的所有字母表.我搜索并发现अ的Unicode值是2309,आ的值是2310,它们是DEVANAGRI语言的字母表.我写的代码是这样的.

class Test
{
    public static void main(String args[])
    {
        char a=(char)2310;
        System.out.println(a);
    }
}
Run Code Online (Sandbox Code Playgroud)

没问题我写2309或2310的输出是'?' 总是.这是怎么回事?

Pra*_*lee 13

您正在尝试打印控制台字符集不支持的字符.您可以尝试更改此处提到的控制台字符集无法打印印地语字符