C#如何用foreach给string类型的字符串中单个字符换成另外一个字符.

例如string a="abcdefg";更换后a="pbcdefg";
2024-12-25 16:45:03
推荐回答(1个)
回答1:

推荐用StringBuilder ,这种类型可以直接给单个字符赋值
例:StringBuilder s = new StringBuilder("abcdefg");s[0]='p';

String方法可以,就是效率不高

//[方法一]
string str = "abcdefg";
foreach (char var in str)
{
int index = str.IndexOf(var);
if (index == 0)
str = str.Replace(var, 'p');
break;
}

//[方法二]
//项目配置中,允许不安全代码
unsafe
{
string str = "abcdefg";
fixed (char* p = str)
{
p[0]='p';
}
}