C# 编辑字符串时发生编译错误
有人知道为什么它告诉我不能编辑链接它是只读的吗C# 编辑字符串时发生编译错误,c#,string,compilation,toupper,C#,String,Compilation,Toupper,有人知道为什么它告诉我不能编辑链接它是只读的吗 public static string FormaterChainePascalOuMixte(String chaine) { for (int i = 0; i < chaine.Length; i++) { char xxx = char.ToUpper(chaine[i]); if (i != 0 && chaine[i] ==
public static string FormaterChainePascalOuMixte(String chaine)
{
for (int i = 0; i < chaine.Length; i++)
{
char xxx = char.ToUpper(chaine[i]);
if (i != 0 && chaine[i] == xxx)
{
chaine[0] = char.ToLower(xxx);
}
}
}
公共静态字符串格式chainepascaloumixte(字符串链)
{
对于(int i=0;i
因为字符串是不可变的,所以在创建字符串对象后(不使用不安全的代码)不可能修改该对象的值。但是,有许多方法可以修改字符串的值并将结果存储在新的字符串对象中。参考:
您可以按如下方式更改代码:
public static string FormaterChainePascalOuMixte(String chaine)
{
if (String.IsNullOrEmpty(chaine))
return null;
char[] charArray = chaine.ToCharArray();
for (int i = 0; i < charArray.Length; i++)
{
char xxx = char.ToUpper(charArray[i]);
if (i != 0 && charArray[i] == xxx)
{
charArray[0] = char.ToLower(xxx);
}
}
return charArray.ToString();
}
公共静态字符串格式chainepascaloumixte(字符串链)
{
if(String.IsNullOrEmpty(chaine))
返回null;
char[]charArray=chaine.ToCharArray();
for(int i=0;i
字符串是不可变的。您需要创建一个新字符串。