我在网上找到了这个代码,编译时打印出5和10:
int numbеr = 5;
int number = 10;
System.out.printf("Number one is %d and number two is %d.", numbеr, number);
这怎么可行?!
答案 0 :(得分:40)
Java支持Unicode字符,其中一个"数字中的一个或多个字母"变量是来自不同字母表的unicode字母,您可以通过复制粘贴这两个名称并尝试执行此操作来检查:
System.out.println("numbеr".equals("number"));
它们看起来与肉眼相同,但它们不是,您的IDE将在控制台中显示为评估结果。亲自尝试一下。
编辑:
这封信' e'不同的是,如果你谷歌搜索" unicode 1077"那么将它输出到int的输出是101和1077。以下链接是搜索引擎向您抛出的众多链接之一:
http://www.codetable.net/decimal/1077
正如你所看到的,它是用西里尔字母小写的字母' e'。