System.String.Split()
是否会返回null
? (.NET)
我知道我一直在编码,但是在阅读文档时我并没有看到这样的陈述。由于文档中没有这样的声明,所以我想在社区的经验中询问是否有人遇到string.Split
返回null
的案例?
答案 0 :(得分:35)
不,它不能返回null。如果你看一下它的来源,它甚至可以用代码契约保证它:
public String[] Split(params char[] separator) {
Contract.Ensures(Contract.Result<String[]>() != null);
所有公共超载也都有同样的保证。
答案 1 :(得分:13)
不,它不会返回null。如果分隔符不存在,则返回整个字符串
来自MSDN
如果此实例不包含分隔符中的任何字符串,则返回的数组由包含此实例的单个元素组成。如果separator参数为null或不包含任何字符,则假定空格字符为分隔符
答案 2 :(得分:1)
它无法返回,请确保您的财产不为空
if (property != null)
{
string[] splitData = sampleObject.property.Split(new char[] { ',' },
StringSplitOptions.RemoveEmptyEntries);
}