【问题标题】:How do I make an rightward arrow symbol appear? Right now it's a question mark while using "/u2192"如何使向右箭头符号出现?现在使用“/u2192”时这是一个问号
【发布时间】:2019-09-15 23:03:22
【问题描述】:

我想要一个向右的箭头符号,在谷歌搜索时我发现有几页说写 "\u2192" 会起作用。我没有收到错误消息,但在输出中有一个问号而不是箭头。我正在使用 Java。可能是什么问题?

我是一个初学者,所以也许有一个超级简单的解决方案,但老实说,我什至不知道从哪里开始。

这基本上是代码(但比“单词”更相关的单词):

System.out.println("Words" + " \t" + "\u2192" + "More words");

当我打印它时,我得到:

单词?更多单词

我想要的是:

单词箭头更多单词

【问题讨论】:

  • 为什么不直接使用“->”之类的东西。只是一个想法!
  • 你的 JVM 的默认字符编码是什么?你的控制台支持吗?
  • 尝试配置您的 Eclipse 控制台以查看输出。见this
  • 您不必连接所有这些字符串部分。只需将所有内容放在一个字符串中即可。

标签: java symbols


【解决方案1】:

计算机上的字符由编码表示;不同的计算机系统使用不同的编码,实际上同一台计算机上的不同设施可能使用不同的编码。编码代表具有不同值的不同字符,因此 ASCII 'A' 是 0x41(十六进制 41),但在 EBCDIC 中是 0xCA。

因此 IBM 大型计算机倾向于使用 EBCDIC 编码;较旧的 Unix 机器倾向于使用 ASCII 编码(各种风格),而现代系统倾向于使用 Unicode 编码。

为了让任何计算机程序显示您的右箭头,它需要了解 Unicode 编码。对于普通的可打印字符,您不必担心它,因为 Java 运行时会根据需要进行翻译——Java 程序中的“a”将以 ASCII、Unicode、EBCDIC 或运行时使用的任何形式输出。但是右箭头是不可打印的,你不能把它放在引号之间(至少不容易),所以原始二进制数被放在流中。它可以在使用 Unicode 的系统上工作,但不能在任何其他系统上工作。

我不知道其他编码中的右箭头字符;一位评论者建议用可打印字符制作右箭头对我来说似乎相当不错。但这就是为什么您的程序虽然可能是正确的,但不会在输出中产生右箭头 - 处理您的输出的任何东西都不理解 Unicode 字符。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-25
    • 2017-10-06
    相关资源
    最近更新 更多