日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > java >内容正文

java

Java隐藏代码

發(fā)布時(shí)間:2023/12/3 java 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java隐藏代码 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
不久前,我遇到了字符串中不可見字符的問題。 因?yàn)樗鼈兪遣豢梢姷?#xff0c;所以它們確實(shí)會(huì)引起混亂。 String a = "Hello\u200e";String b = "Hello\u200f";System.out.println('\'' + a + "' and '" + b + "' are length "+ a.length() + " and " + b.length() + ", equals() is " + a.equals(b));

版畫

'Hello?' and 'Hello?' are length 6 and 6, equals() is false

不可見的標(biāo)識(shí)符

想象一下我對(duì)發(fā)現(xiàn)您可以在Java:P中的標(biāo)識(shí)符中使用不可見字符的反應(yīng)。 這些字符不能出現(xiàn)在Java標(biāo)識(shí)符的開頭,但可以出現(xiàn)在其他任何位置。

System.out.println("String _\u200e = \"Hello \";");System.out.println("String _\u200f = \"World\";");System.out.println("String _\u200e\u200f = \" !!\";");System.out.println("System.out.println(_\u200e+_\u200f+_\u200e\u200f);");

版畫

String _? = "Hello "; String _? = "World"; String _?? = " !!"; System.out.println(_?+_?+_??);

運(yùn)行時(shí)打印

Hello World !!

因此,我們有三個(gè)標(biāo)識(shí)符都顯示相同的標(biāo)識(shí)符,因?yàn)樗鼈兊拿Q中具有不同的不可見字符!

令人驚訝的是,此代碼編譯,運(yùn)行并打印了可能在標(biāo)識(shí)符中但未啟動(dòng)的所有字符。 該代碼包含\ u202e ,它確實(shí)使代碼的顯示混亂。

for (char c??h = 0; c??h < Character.MAX_VALUE; c??h++)if (Character.isJavaIdentifierPart(c??h) && !Character.isJavaIdentifierStart(c??h))System.out.printf("%04x <%s>%n", (int) c??h, "" + c??h);

參考: Vanilla Java博客上來自我們的JCG合作伙伴 Peter Lawrey的隱藏代碼 。


翻譯自: https://www.javacodegeeks.com/2012/09/java-hidden-code.html

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的Java隐藏代码的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。