在JAVA变量名中使用UTF-8字符

Cat*_*ysm 6 java variables syntax utf-8 character-encoding

我想知道我可以使用我的母语字符(或字符串)作为JAVA变量名吗?所以,我用缅甸Unicode测试了如下.

    public static void main(final String[] args) {
    String ??? = "??????????";
    System.out.println("???????????.?? " + ???);
}
Run Code Online (Sandbox Code Playgroud)

此代码将我的成功消息显示为"ကောင်းသောနေ.ပါမောင်မောင်".但在下面的代码中有另一个变量名(它也是我的母语字符串).....

    public static void main(final String[] args) {
    String ???????? = "??????????";
    System.out.println("???????????.?? " + ????????);
}
Run Code Online (Sandbox Code Playgroud)

在我的Ecliplse IDE中产生编译时错误.

此行的多个标记 - 标记上的语法错误,删除这些标记 - 出现异常 - 标识符中出现意外的字符0x103a

有什么建议吗?为什么会出现这个问题?感谢您耐心地阅读我的问题.......

Njo*_*jol 6

Java 6仅支持Unicode 4.0,这是一个相当古老的Unicode版本,不包括缅甸(或至少只是简陋的).扩展的Myanmar支持被添加到Unicode 5.1中,Java 7支持它.

要解决此问题,请安装JDK 7(如果尚未安装),并将Eclipse项目配置为编译为Java 7(Project-> Properties-> Java Compiler).请注意,编译为Java 7的代码无法在Java 6或更低版本上运行.

  • 老实说,解决这个问题不要使用缅甸标识符:)但+1为正确的答案. (2认同)