Java 无效字符常量

Java 无效字符常量,java,character,constants,Java,Character,Constants,我需要这样做: if(']' == body.charAt(body.length()-1) || '锛� == body.charAt(body.length()-1) || '銆� == body.charAt(body.length()-1)){ score++; } 我得到一个错误:无效的字符常量 为什么??我怎样才能克服它 提前非常感谢。看看您的源代码,它似乎是Java。 此外,这似乎已损坏: '锛� == body.charAt(body.length()-1) 也许应该

我需要这样做:

if(']' == body.charAt(body.length()-1) || '锛� == body.charAt(body.length()-1) || '銆� == body.charAt(body.length()-1)){
    score++;
}
我得到一个错误:无效的字符常量

为什么??我怎样才能克服它


提前非常感谢。

看看您的源代码,它似乎是Java。 此外,这似乎已损坏:

'锛� == body.charAt(body.length()-1)
也许应该读一下

'锛' == body.charAt(body.length()-1)
考虑到这一点,您有两种选择:

  • 确保源代码保存为UTF-8。有几种方法可以检查这一点,在Windows上,我建议使用记事本+,并选择另存为UTF-8而不使用BOM选项

  • 对非ASCII常量使用
    \uhhh
    语法。据我所知,你的锛 字符应编码为
    U+951B
    ,因此您可以改为使用:
    '\U951B'==body.charAt(body.length()-1)


  • +1表示显式Unicode代码点。如果将非ANSI字符剪切并粘贴到许多编辑工具中,这些字符通常会被破坏。谢谢你的回复。我已经用您使用Notepad++的方法更正了我的代码。非常感谢。欢迎来到Stackoverflow!如果你喜欢答案或者他们解决了你的问题,你应该投票和/或接受他们。这就是这个网站的工作方式这是一个真正的问题-无需投票关闭。这是一个真实而有价值的答案