力扣今天的编译器bug?
java的split方法
对于字符串 “a.b.c”.split(“.”) 的运行结果,肯定是长度为3的字符串数组吧
然而今天的力扣给我表演了一手,分组结果为长度为0
就尼玛离谱!!!!!
老夫真是百撕不得骑姐
然后猛然想到是特殊符号的原因
加了转义符之后,就正常了
细心的朋友是不是看到得有两道转义符,源码我就懒得扒了。
力扣这个平台用的jdk版本里的split方法,内部应该是用正则表达式去做的,这样 点 传进去,就是通配的意思了,转义一下,进去的就是转义+点,直接非法了。。。 得把反斜杠自己也转义一遍,这样进去最终得到的间隔字符才是 点。
这个题目没花几分钟,这个隐性问题我特么试了半天才发现,起初还以为是代码写错了,因为没有idea,就f12 在控制台测试了这个split方法,发现没问题啊,卧槽! 然后才想到是javaSDK版本里的实现和JavaScript不一样。
做个记录,加深印象!!!