精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-11-08
这两个都有点诡异。不若javascript中的split清晰。
|
|
返回顶楼 | |
发表时间:2010-11-09
String[] strs = "".split(",");
String[] strs = ",".split(","); String[] strs = ",1,".split(","); split的规则是: 1、不匹配,返回整个字符串 2、有匹配,进行切分 3、如果结果集中最后的空格(尾空格),去掉 所以很好理解你给你例子: 1、不匹配 2、匹配,切分,去掉尾空格,所以变成了空结果 3、匹配,切分,去掉尾空格,所以变成了{"", "1"}的结果 呵呵!也不算潜规则吧,人家文档写的清清楚楚,没有仔细看吧?不要去掉为空格怎么办? 使用split的另外一个重载形式。 |
|
返回顶楼 | |
发表时间:2010-11-11
最后修改:2010-11-11
seanzeng 写道 2、匹配,切分,去掉尾空格,所以变成了空结果
,之后的空格是尾空格,会去除,那,之前的空格为什么也不保留呢? |
|
返回顶楼 | |
发表时间:2010-11-12
flysnowxf 写道 seanzeng 写道 2、匹配,切分,去掉尾空格,所以变成了空结果
,之后的空格是尾空格,会去除,那,之前的空格为什么也不保留呢? 后面的空格去掉后,前面的空格不就也变成了尾部空格了?去尾部空字符串是一个while(true)动作。 |
|
返回顶楼 | |
发表时间:2010-11-12
Jacky-Q 写道 flysnowxf 写道 seanzeng 写道 2、匹配,切分,去掉尾空格,所以变成了空结果
,之后的空格是尾空格,会去除,那,之前的空格为什么也不保留呢? 后面的空格去掉后,前面的空格不就也变成了尾部空格了?去尾部空字符串是一个while(true)动作。 恩,这样的解释就明白了。 |
|
返回顶楼 | |
发表时间:2010-11-15
flysnowxf 写道 Jacky-Q 写道 flysnowxf 写道 seanzeng 写道 2、匹配,切分,去掉尾空格,所以变成了空结果
,之后的空格是尾空格,会去除,那,之前的空格为什么也不保留呢? 后面的空格去掉后,前面的空格不就也变成了尾部空格了?去尾部空字符串是一个while(true)动作。 恩,这样的解释就明白了。 呵呵!去掉尾空格,应该是去掉尾部的连续空格,没想到我少说两个字,引起误会了。 {"", "", ""},这3个都是结尾的连续空格,就会全部去掉,返回的length就是0了 |
|
返回顶楼 | |