我很困惑 string.Split(';')
正在解析哪个重载;我不认为 ';'
是一个字符数组,对吗?
然而,这编译正常,但如果我尝试添加第二个 StringSplitOptions
参数,则找不到合适的重载。
我不喜欢必须执行 new char []{';'}
这可以避免吗?
最佳答案
first overload String.Split()
的参数定义为
params char[] separator
这意味着您可以传递任意数量的 char
参数并且它会起作用:
someString.Split('1', '2', '3');
// or just one separator
someString.Split(';');
second overload不同的是,它是这样定义参数的
char[] separator, StringSplitOptions options
注意,没有params
.这需要你传递 char[]
参数:
someString.Split(new[] {'1', '2', '3'}, StringSplitOptions.None);
// or just one separator
someString.Split(new[] {';'}, StringSplitOptions.None);
关于c# - 为什么 string.Split (';' ) 有效但 string.Split (':' ,StringSplitOptions.RemoveEmptyEntries) 无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33123725/