C# 不允许更新特定索引的值

C# 不允许更新特定索引的值,c#,.net,string,C#,.net,String,检查同一索引后,我在为字符串中的特定索引赋值时遇到问题: 下面是我的代码: “bits”是字符串,“dirtybit”是整数 if (bits.ElementAt(dirtybit).Equals('1')) bits[dirtybit] = '0'; //shows red underlined error 错误: 属性或索引器字符串。无法将此[int]分配给--只能读取 为什么我不能访问相同的索引(值) 有什么解决办法吗 字符串用C#表示。在创建它们之后,不能对其进行更改 可以

检查同一索引后,我在为字符串中的特定索引赋值时遇到问题: 下面是我的代码:

“bits”是字符串,“dirtybit”是整数

if (bits.ElementAt(dirtybit).Equals('1'))
      bits[dirtybit] = '0'; //shows red underlined error
错误:

属性或索引器字符串。无法将此[int]分配给--只能读取

  • 为什么我不能访问相同的索引(值)

  • 有什么解决办法吗

  • 字符串用C#表示。在创建它们之后,不能对其进行更改

    可以使用创建新字符串

    发件人:

    字符串是不可变的——不能更改字符串对象的内容 创建对象后更改,尽管语法使其 看起来好像你能做到这一点


    那么我怎样才能更改字符串中的任何字符呢?您可以使用不安全的代码和指针。但我认为你真的不需要这个。另一种方法是使用char数组,并在需要时将其转换为字符串。@M.kazemAkhgary或更可能的
    bool
    array…@AlexeiLevenkov yeah,如果这里只有0和1的值。