java - 为什么此代码总是产生输出 '?'

标签 java

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

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

无论我写 2309 还是 2310,输出都是“?”总是。这是怎么发生的?

最佳答案

您正在尝试打印控制台字符集不支持的字符。您可以尝试更改控制台字符集,如此处所述 Can't print hindi characters

关于java - 为什么此代码总是产生输出 '?',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34987954/

相关文章:

java - 为什么这个列表不抛出 ClassCastException?

Java:如何从包中编译可运行的 jar?

java - 64 位 java 读写 *dbf

java - 在外部位置使用邮件和激活 jar 的 ant 邮件任务

java - 如何在没有时间的情况下将LocalDate保存到MongoDB(为什么即使我只保存日期,mongo也会随时间保存日期)?

java - 如何将其他 LDAP 属性映射到 Glassfish 中的主体对象?

java - 将参数传递给Hadoop中的映射函数

java - 如何无限次重复使用单个 Activity ?

java - 包装和可见性?

java - Web 应用程序不使用 Spring Boot 和 Tomcat 提供静态资源