• C#字符串基础


    C#字符串基础

    1. 1.    字符串的两种创建形式

    (1)String A=”cat”;     

    (2)String B=new string{‘a’,4}  .调用类方法,创建一个“aaaa”的字符串

    (3)可用A【2】引用‘t’字符

    (4)可用 A.Length 直接得出字符串的长度

           2.字符串的比较

                  (1)string.compare(string1,string2);左大于右,返回1.左右相等返回2右大于左返回-1

                  (2)如果仅比较两字符串是否相等:string 1.Equals(string 2);相等返回True

                  (3)如果仅比较两字符串是否相等:string1==string 2;相等返回True(正常引用类型的==判断是对于引用地址是否相同的判断,但是字符串虽然是引用类型但这里将它特殊的以值类型==方式的进行判别)

    3.字符串的查找

           (1)Contains方法:if(s1.Contains(“abc”/s2);s1中是否包含s2,包含True

            (2)IndexOf:  s1.IndexOf(“avd”/’a’/s2);从0开始找字符串中子字符串的出现的首先位置。s1.IndexOf(“avd”/’a’/s2,int number);从number位置开始找字符串中子字符串出现首位置。

    LastIndexOf 同IndexOf 只不过它是从后往前找。

    (3)IndexOfAny:作用是在一个字符串中,寻找其他几个字符中的任意一个,如果出现任意一个则返回第一个的首位置。如果没有则返回-1

    String A=”ABCDEFG”;

    Char []c={‘e’,’f’};

    Int x=A.IndexOfAny(c);

    //单词补充: index 索引,指数 indexOf 索引

    1. 1.    求子字符串

    Sting B=A.Substring(2);从2位置开始到最后

    String B=A.Substring(2,5);从2号位置到5号位置

    //如若传入值小于0,系统会抛出ArgumentOutOfRange异常表明参数范围出界

    1. 2.    字符串中字母大小写的转换

    String A=B.Upper();   转换为大写

    String B=B.Lower();    转换为小写

    1. 3.    字符串中的插入,删除和替换

    String A=”abcdefg”;其中StartIndex 的范围是0-Length-1

    (1)String s1=A.Insert(2,”abc”/A); 在2后插入新的字符串

    (2) string s2=A.Remove(2); 删除2位置后的所有字符串

    (3)string s3=A.Remove(2,3);删除2位置后的三位字符

    (4)  string s4=A.Replace(‘a’,’b’);将所有的a字符全部替换为b

    (5)  string s5=A.Replace(‘ab’,’’);(‘ ’空字符,不表示,不是空格)

    7.字符串的合并与拆分

    (1)两字符串合并:string A=B+C;

    (2)字符串数组中,字符串元素的合并:string.Join(参数一:用于连接各字符串元素的连接符。Char/string类型 可以是空字符;参数二:所要连接的字符串数组) ;

    (3)字符串拆分成字符串数组:string [] B=字符串名.Split(分隔符,char/string型,可以有一个或多个。多个用逗号隔开,不能是空字符);

    8.移除首位指定的字符

    (1)移除字符串首部:

    字符串名.TrimStart();//移除空字符

    字符串名.TrimStart(’’);//移除一个字符

    字符串名.TrimStart(’,’’’);//移除多个字符

    (2)移除字符串尾部TrimEnd()

    (3)同时移除字符串首尾字符Trim()

    //单词补充: trim n.点缀物;修剪,整理 v.使整齐;整修;欺骗,怒斥; adj.整洁的,整齐的

    9.string 与 stringbuilder 的区别

    (1)String类实际上表示的是一系列不可变的字符(静态)如 String i+=”abc”; 实际上是返回了一个新的String型实例,不是在原本的String变量的内存上做数据修改。若程序中用到字符串连接的次数少,则此方法方便。但如果程序中存在大量这种操作,则会降低效率

    (2)StringBuilder 是System.Text 命名空间下的,可以弥补上述不足。编译器会自动为其分配一定内存,也可以在程序中直接修改(动态)

    e.g.

    StringBuilder sb1 = new StringBuilder();//空字符串

    StringBuilder sb2 = new StringBuilder();

    const string s1 = "乾坤转六合"; //定义字符串常量

    string s2 = "八荒测阴阳哈哈";   //定义字符串

    try{

       Console.WriteLine("运行了");

    //try中语句出错,不会直接跳到catch中,而是运行到错误的语句时再跳出

         sb1.Append(s1);          //Append 可接收字符串常量

         sb1.Append(",");        //Append 可直接守字符串常量,及单字符(隐式转换)

           sb2.Append(s2);         //Append 可接收字符串

           Console.WriteLine("sb2是:"+sb2); 

           sb1.Append(sb2, 5, 6);  //此处发生错误,跳转到catch中

           Console.WriteLine(sb1);}

     catch{

           sb1.Append(sb2,0, 5);

           //在此说明Append的重载:单词补充:Append v.附加增补

          //sb.Append(参数一:要连入的字符串s,参数二:s的首位置,参数三:s字符个数)

          Console.WriteLine(sb1);Console.WriteLine("!");

          sb1.AppendLine();

          Console.WriteLine(sb1); Console.WriteLine("!");

          //AppendLine 与 Append  的区别仅仅在于多了一个换行符

          //用Console.WriteLine 输出时会把sb隐式转换为s

          string s3 = sb1.ToString();

           Console.WriteLine(s3);}

  • 相关阅读:
    asp.net页面刷新后样式就发生了改变
    ASP.NET MVC 入门系列教程
    javascript打开邮箱服务器
    jquery验证邮箱
    MySQL数据库的索引类型
    JS判断浏览器
    Silverlight 3 新特性
    moss 2007 添加关键字及最佳匹配
    vs2008 常用快捷键
    Microsoft Enterprise Library 5.0正式版本已经发布
  • 原文地址:https://www.cnblogs.com/fangexuxiehuihuang/p/11638450.html
Copyright © 2020-2023  润新知