Mar*_*ark 4 c# arrays string replace
我有一个字符串数组,来自分裂的字符串
string[] newName= oldName.Split('\\');
newName.Last().Replace(newName.Last(), handover);
Run Code Online (Sandbox Code Playgroud)
为什么这不会替换我在Array中的最后一个元素?
last()来自使用linq
问候
Jon*_*eet 11
调用string.Replace不会改变现有字符串 - 字符串是不可变的.
相反,它返回一个新的字符串,并带有适当的替换.但是,你没有使用返回值,所以它基本上是一个无操作.
您需要更改数组元素本身以引用不同的字符串.像这样的东西:
newName[newName.Length - 1] = handover;
Run Code Online (Sandbox Code Playgroud)
此外,从.NET Core 3.0(和.NET Standard 2.1)开始,您可以使用Index类型从最后获取/设置数组元素(如字符串)。
请参阅下面的示例:
newName[^1] = handover;
Run Code Online (Sandbox Code Playgroud)
有关其他信息,请参阅文档
| 归档时间: |
|
| 查看次数: |
3627 次 |
| 最近记录: |