字符串的处理
C#中单个字符用单引号包含就是char类型,('a'),单引号中放且只能放一个字符。
单个字符也可以表示为字符串,还可以有长度为0的字符串
使用s.Length属性来获得字符串中的字符个数
string可以看做是char的只读数组。char c = s[1];。
C#中字符串有一个重要的特性:不可变性,字符串一旦声明就不再可以改变。所以只能通过索引来读取指定位置的char,不能对指定位置的char进行修改。
如果要对char进行修改,那么就必须创建一个新的字符串,用s.ToCharArray()方法得到字符串的char数组,对数组进行修改后,调用new string(char[])这个构造函数来创建char数组的字符串。一旦字符串被创建,那么char数组的修改也不会造成字符串的变化。例子:将字符串中的A替换为a。
要区分变量名和变量指向的值的区别。程序中可以有很多字符串,然后由字符串变量指向他们,变量可以指向其他的字符串,但是字符串本身没有变化。字符串不可变性指的是内存中的字符串不可变,而不是变量不变。
string s = "abcdefgh";//定义一个字符串,并赋值。 char[] c = s.ToCharArray(); //通过s.ToCharArray()函数 把s字符串 转换成 c字符数组。 c[1] = '1'; //修改c[1] 为1.即将字符串中的b变成1 string s2 = new string(c); //通过 new string(c) 函数 把c字符数组转换成s2字符串。 Console.WriteLine(s2);//输出字符串s2 Console.ReadKey();//按任意键结束。
输出结果: