C#---字符串的处理

  • string可以看作是char的只读数组。

  • C#中字符串有一个重要的特性:不可变性,字符串一旦声明就不可以再改变。所以之恶能通过索引来读取指定位置的char,不能对指定位置的char进行修改

  • 如果要对char进行修改,那么就必须创建一个新的字符串

  • ToLower:把字符串转化为小写

  • ToUpper:把字符串转化为大写

  • str1.Equals(str2,StringComparison.OrdinalIgnoreCase),两个字符串进行比较不区分大小写

  • 注意字符串是不可变的,所以这些函数都不会直接改变字符串的内容,而是把修改后的字符串的值通过函数返回值的形式返回(大小写)

  • string str=null 与string str=“”说明其中的区别

  • string str=null是不给他分配内存空间,并且没有string对象

  • string str=“”给他分配长度为空字符串的内存空间,并且有一个字符串对象

  • 谁说字符串不可变?string s=“abc” s=“123”,s这不是变了吗?
    *要区分变量名和变量指向的值的区别,程序中可以有很多字符串,然后由字符串变量指向他们,变量可以指向其他的字符串,但是字符串本身没有变化,字符串不可变性指的是内存中的字符串不可变,而不是变量不变

  • 字符串的连接+,两边只要有一个是字符串类型,另一个也会被自动转换成字符串类型

  • 一切类型都可以调用.ToString()方法转换成字符串类型

  • 字符串替换:string Replace(string oldValue,string newValue)。将字符串中的出现oldValue的地方替换为newValue

  • 取子字符串:string Substring(int startIndex),取从位置startIndex开始一直到最后的子字符串

  • String Substring(int startIndex,int length),取从位置startIndex开始长度为length的子字符串,如果子字符串的长度不足length则报错

猜你喜欢

转载自blog.csdn.net/dingmengwei/article/details/106436454