【发布时间】:2016-01-12 10:43:25
【问题描述】:
我很困惑string.Split(';') 正在解决哪个重载问题;我不认为';' 是一个字符数组是吗?
但是,这编译正常,但如果我尝试添加第二个 StringSplitOptions 参数,则找不到合适的重载。
我不喜欢做new char []{';'} 可以避免吗?
【问题讨论】:
-
它是一个字符数组:
Split(params Char[] value) -
至少,你可以做到
new[] { ';' }。 -
@Mr.Boy:你读过documentation on
params吗? -
由于
params关键字,你可以.Split(';', ',', '-')。编译器将多个 args 变成一个数组 -
A
params参数也必须是签名中的 last 参数,并且在您想要拆分的实际内容之前传递StringSplitOptions会很奇怪允许您使用此签名创建重载。您当然可以构建自己的扩展方法,根据需要重新映射参数。