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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© xinchenglong 中级黑马   /  2013-8-26 22:31  /  2227 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

string[] li =line.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
这是一个split函数的一个重载函数,这个函数不太会使用,也不太理解,求帮助!? 平常用的最多的就是split(’‘)方法了!

8 个回复

正序浏览
你说的这种是以char分割
string[] Split(char[] separator, StringSplitOptions options) 将字符串按照指定的char分割符分割为字符串数组,options 取RemoveEmptyEntries的时候移除结果中的空白字符串
扩展一下,还有一种是以string分割
string[] Split(string[] separator, StringSplitOptions options) 将字符串按照指定的string分割符分割为字符串数组,同样options 取RemoveEmptyEntries的时候移除结果中的空白字符串

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1

查看全部评分

回复 使用道具 举报
第一个表示传一个char[]数组,数组中的都是你要分割字符串的标志,第二个参数是个枚举,如果选StringSplitOptions.RemoveEmptyEntries表示把你分割后得到的string[]数组中的空类型去掉。

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1

查看全部评分

回复 使用道具 举报
string str1 = "1,2,3,4,5"; //声明一个字符串并赋值
            string [] str2=new string [20]; //声明长度为20的字符数组变良
            char[] sp = { ','};       //分割字符
            str2 = str1.Split(sp ); //分割字符串
            for (int i = 0; i < str2.Length; i++)
            {
                Console.WriteLine(str2 [i ]);  //输出分割结果
            }
            Console.ReadKey();
运行结果就是 1 2 3 4 5   这样你对比下理解吧

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1 参加入学考试吧亲

查看全部评分

回复 使用道具 举报
Split方法用来分割字符串,那么首先要有字符串和分割符。分割符参数如果多于一个,就要使用字符数组来存取。例如:char[] separators = {'|', '-', '?'}; 如果字符串中含有这些字符,就会以此来分割。

string[] li =line.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
第一个参数:new char[] { ' ' }为字符数组,只不过这个字符数组只有一个字符' '。
第二个参数:移除字符串中多余的空格。比如说字符串"Just do                   it", do 和 it 之间有多个空格,那么按照空格来分割时,就会得到 just、do、it三个子字符串;否则it字符串就被割没啦!!
第二个参数默认是none,就是不移除。

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1

查看全部评分

回复 使用道具 举报
这个一看意思就知道啦,几个重载就是在分隔字符串时处理相应的选项,你说的这个是移除多余空格!
回复 使用道具 举报
new char[] { ' ' }是说你要用来进行分割的符号,如果是两个符号以上的话就是要用一个数组来存放它咯。
StringSplitOptions.RemoveEmptyEntries意思是说返回的数组值不包括含有空字符串的数组元素,另外它还有一个是StringSplitOptions.none是指返回值包括含有空字符串的数组元素。
回复 使用道具 举报
第一个参数就是传一个char类型的数组。
第二个是一个枚举类型的,表示数组li中不会含有空字符串的元素。
至于new 看不懂的话可以先自己定义一个char类型的数组然后把数组的名字传进去也是可以的。

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1

查看全部评分

回复 使用道具 举报
恩恩,求高人帮助,我也不懂,一堆括号,关键是那个new关键字,放那里是什么意思
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马