如果您只想获取字符串的一部分,则主要使用子字符串方法.这有一个缺点,你必须首先测试字符串的长度,以避免错误.例如,您希望将数据保存到数据库中,并希望将值剪切为前20个字符.
如果你执行temp.substring(0,20)但temp只保存10个字符,则抛出异常.
我看到有两种解决方案:
使用扩展方法Take
string temp = "1234567890";
var data= new string( temp.Take(20).ToArray());
--> data now holds "1234657890"
Run Code Online (Sandbox Code Playgroud)当使用Take方法时,在速度或内存使用方面是否有任何缺点.好处是您不必编写所有if语句.