A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 刘长路 中级黑马   /  2012-9-18 17:31  /  1381 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

string str = "abc    cba bac";(abc与cba之间有四个空格)
为什么经过string[] str1 = str.Split(cha);这一步执行语句之后得到的是三个空字符串的数组元素,而不是两个呢?
这四个空字符串应该是分隔符,第二个是空字符串数组元素,第三个又是分隔符,第四个又是空字符串数组元素,这样计算的话应该是两个空字符串数组元素啊

QB)L_8`O]5SFWQZ$01%7U2T.jpg (18.45 KB, 下载次数: 30)

QB)L_8`O]5SFWQZ$01%7U2T.jpg

B_(~BBOL`GX`{JLXJ(`I%I6.jpg (23.52 KB, 下载次数: 37)

B_(~BBOL`GX`{JLXJ(`I%I6.jpg

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

2 个回复

倒序浏览
得到的三个空字符串的数组元素没问题啊,你这么想吧,假设那4个空格是你的4根手指,那么会有几个手指缝呢?你上面说的那种想法怎么把第一个空格忽略了啊

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
你的程序就是要把字符串"abc    cba bac"按空格进行分隔,返回值包括含有空字符串的数组元素。
换个角度考虑,把空格想象成f,也就是把字符串abcffffcbafbac按照f进行分隔,那么4个f被分隔之后中间是3个空字符串数组元素"",最终分隔出来:"abc","","","","cba","bac"。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马