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

时间:2016-01-25 08:22:32

标签: java

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

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

无论我写2309或2310输出是'?'总是。这是怎么回事?

1 个答案:

答案 0 :(得分:13)

您正在尝试打印控制台字符集不支持的字符。你可以尝试更改这里提到的控制台字符集Can't print hindi characters