博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java神坑系列——split
阅读量:4957 次
发布时间:2019-06-12

本文共 890 字,大约阅读时间需要 2 分钟。

作为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

 

 

ps 

"a".split(".").length有人说这个是神坑,我相说这个不是,在正则中.代表所有。这句话是以全部的字符作分隔符当然是0. 这个让我想起"sss".replaceAll(".", "") 有人说这个也是坑,我想说这个也不是,这句话是把所有的字符都替换为空……。

转载于:https://www.cnblogs.com/agnils/p/7120464.html

你可能感兴趣的文章
XPath Helper和XPath语法
查看>>
Halcon学习(八)文本操作
查看>>
MFC电子词典
查看>>
简单工厂(Simple Factory)
查看>>
04: 打开tornado源码剖析处理过程
查看>>
02: 安装epel 解决centos7无法使用yum安装nginx
查看>>
清除浮动
查看>>
PayPal(贝宝)支付接口、文档、IPN
查看>>
站立会议总结07
查看>>
ORACLE 10G R2_执行计划中cost cardinality bytes cpu_cost io_cost解释
查看>>
关于this和base
查看>>
(转)Scrapy 深入一点点
查看>>
荧光激活细胞分选( FACS)
查看>>
传球游戏
查看>>
如何组建和管理测试团队
查看>>
理论相关概念原理
查看>>
本地存储
查看>>
MP3的播放与停止
查看>>
两个周末,两个湖
查看>>
开发环境搭建
查看>>