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

时间:2014-02-03 11:56:37

标签: java variables syntax utf-8 character-encoding

我想知道我可以将我的母语字符(或字符串)用作 JAVA变量名称吗? 所以,我使用Myanmar Unicode进行了如下测试。

    public static void main(final String[] args) {
    String ဆဆဆ = "မောင်မောင်";
    System.out.println("ကောင်းသောနေ.ပါ " + ဆဆဆ);
}

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

    public static void main(final String[] args) {
    String တက်စတင်း = "မောင်မောင်";
    System.out.println("ကောင်းသောနေ.ပါ " + တက်စတင်း);
}

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

  

此行有多个标记        - 令牌上的语法错误,删除这些令牌        - 有异常 - 意外字符0x103a in        标识符

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

5 个答案:

答案 0 :(得分:6)

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

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

答案 1 :(得分:4)

在IDE中配置charset。如果您使用的是Eclipse,请转到属性并搜索字符集或编码。为java编辑器将其配置为UTF-8。

答案 2 :(得分:1)

如果字符是字母或数字(第一个字符可能只是一个字母),您可以将您的母语字符用作JAVA标识符。 要确保字符是字母还是数字,请使用Character.isLetterCharacter.isDigit

小心使用支持角色的编码。最佳选择是UTF-8。

在字符串中,您可以使用任何字符。

答案 3 :(得分:1)

我不确定但是尝试设置此操作系统环境
变量JAVA_TOOL_OPTIONS并查看它是否有帮助。

C:\Work>echo %JAVA_TOOL_OPTIONS%
-Dfile.encoding=UTF8

答案 4 :(得分:-4)

如何使用

Charset.forName( “UTF-8”)。编码(myString的)