我想写一个面试前的问题(对于java,但这并不重要),如果你看一下它有不同的答案,如果你复制粘贴它并运行它以便我们可以检查人们是否真的手动执行此问题。
要做到这一点,我正在尝试找到一个与屏幕上的ascii字符看起来相同的unicode字符(因此在我的问题的某个时刻,我可以使用两个具有相同名称但具有Integer /的方法int arguments)
我知道这可能具有颠覆性,但我希望它会提供一个额外的指标来验证其他答案。
注意:我尝试了土耳其'我' - 它似乎是ascii - 是否有unicode版本?
编辑/注意:看起来我的意图被误解了......这些问题是手动完成的,而不是由编译器完成的。如果他们正在复制文本并进行编译,那么他们就会绕过这个问题,而这是打算将它们绊倒(或者更简单地给出错误的答案)。那些做到这两点的人要么弄清楚,要么就会对我们可以帮助他们的困惑进行真正的采访。
最后的注意事项: :(这看起来不太可能 - 大多数编辑(在Windows上)将尝试保存在cp1252(不知何故,我的1个文件保存为UTF-8)在哪种情况下,我认为没有任何字符会在没有提示某种保存错误的情况下工作
答案 0 :(得分:4)
你可以用同样的感觉做一些事情,但稍微不那么模糊的话:
System.out.println(100l);
System.out.println(1001);
根据使用的字体,这两个语句确实看起来非常相似。 (如果您使用的是字体,则第一个数字是100L。)
答案 1 :(得分:4)
有很多可能性 - 这里只是我在Windows Character Map中找到的一对。请注意,并非所有字体都会包含这些字符,因此您的候选人可能无法看到您的意图。
ǃ U+01C3: Latin Letter Retroflex Click
Κ U+039A: Greek Capital Letter Kappa
‚ U+201A: Single Low-9 Quotation Mark
′ U+2032: Prime
答案 2 :(得分:2)
尝试一个西里尔字符,例如'a'或's'。看看:http://jrgraphix.net/research/unicode_blocks.php?block=8
顺便说一下,好主意,但我不会做方法重载的答案。我将使用一个迭代字符串的switch-case。这样就不会出现问题,你可以轻松挑选出真正了解自己内容的候选人。
答案 3 :(得分:2)
n-dash或m-dash - 看起来类似于减号。
答案 4 :(得分:1)
我实际上发现了一些适用于UTF-8和cp1252编码的东西(这样它会传递大多数(全部?)文本编辑器):非破坏空间!
在cp1252中的位置160(00A0,1010000000)注册并且显然是UTF-8(维基百科在“多字节序列的第二,第三或第四字节”的范围内注释它),它提供了一个将在“只是工作”
注意:当从文本文件/ skype复制到代码编辑器中时,已对此进行了测试。一个Wordpress网页的表现并不是那么好(但无论如何它可能会改变角色)。值得庆幸的是,我们的组织没有追求“问题”采访前的策略,所以我没有在网页上明确地测试过这个问题。
答案 5 :(得分:1)
Unicode Consortium有一个专门用于 Confusables 的页面:http://unicode.org/cldr/utility/confusables.jsp
这表明有很多Unicode字符看起来类似于ASCII字符:
与I类似:ІاااⲒ| | | | | | | | | | | | | | | | | | | | | | | | | | | | ⅼ⏽
类似于5:5Ƽ
与K类似:KⲔᛕꓗK K K K
类似于::ःઃ܃᠃:܄。 ᠉꞉᛬︰ː:˸::⁚ꓽ
视觉相似度的确切程度取决于你的字体,但在大多数字体中,至少有一些字形看起来与ASCII字体相同。