首页 > 代码库 > java神坑系列——split

java神坑系列——split

作为java程序员天天都用它,它都是我们的饭碗,但是它的坑实在太多……所以现在想写java神坑系列,今天写第一个坑 string的split方法。

 

split是大家常用的一个方法。但是它有好多坑……

大家都知道它的参数是正则表达式,正则的特殊符号要转义,如果不转义话,嘿嘿ing…………

 大家做个题:如下

        System.out.println("a".split(".").length);
        System.out.println("a".split("|").length);
        System.out.println("a".split("{").length);
        System.out.println("a".split("}").length);

如果你给的答案是

0
2
报错
1

那么说明你用的是jdk1.7。

如果你给的答案是

0
1
报错
1

那么说明你用的是jdk1.8。

就问坑不坑………………………… java之神坑…………

如果两个都不是那你要打打基础了……………………

同样的代出不同的结果………………查到了1.7的源码这个和Pattern split的limit 有关 public String[] split(CharSequence input, int limit) 

技术分享

1.8的源码我没去看,大家可以自己去看看。运行结果如图

 技术分享

========================================第一个神坑就写到这里==============================

附上正则特殊字符的split      jdk1.7

技术分享

 

java神坑系列——split