黑马程序员技术交流社区

标题: 关于string定义的字符串修改 [打印本页]

作者: liu0o0y    时间: 2014-5-1 23:47
标题: 关于string定义的字符串修改
本帖最后由 liu0o0y 于 2014-5-2 13:00 编辑

定义了一个string类型的字符串,如何修改字符串中的值,在返回修改后字符串。string类型字符串是只读的吧
如:    string s = "asdf";
修改后,s为addf
不要是:
string  s = "asdf";
s = "addf";
作者: 小狸    时间: 2014-5-2 01:10
可以用String类的Replace方法吧:
public string Repalce(char OChar,char NChar);
public string Repalce(string  OValue,string NValue);
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;

  5. namespace _Replace
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.           string s="asdf";
  12.           s=s.Replace('s','d');
  13.           Console.WriteLine(s);           //输出结果为:addf
  14.           Console.ReadLine();
  15.         }
  16.     }     
  17. }
复制代码

作者: continue     时间: 2014-5-2 08:32
字符串是只读的,修改不过是拷贝了一份进行修改,如果要源字符串也修改,那就需要对它进行重新赋值
作者: liu0o0y    时间: 2014-5-2 13:00
cuixm66 发表于 2014-5-2 00:17

谢谢您的回复
作者: dwgeneral    时间: 2014-5-2 13:36
同学,苏坤老师的视频里讲过这个,C#中字符串一旦声明就不可改变,所以只能通过索引来读取指定位置的char,因为string可以看成是char的只读数组,要想改变字符串的值,需要用  .TocharArray()方法,然后用一个char数组来接收它,改变这个char数组中的值就好了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2