• c#中string的操作


    4.字符串(引用类型)
    1)字符串的不变性
    当你给一个字符串重新赋值之后,老值并没有被销毁,而是重新开辟一块内存空间存储新值。比如:string person = “张三”;
       person = “王五”;给张三在堆上分配的内存空间没有被销毁,重新在堆上给王五分配了一块内存空间,并把地址赋给person。

    2)当程序结束后,GC(垃圾回收器)扫面整个内存,如果发现有空间没有被指向,则立即被销毁。

    3)可以将string类型看做是char类型的只读数组。
    string s = "abcdefg";
    s[0] = b;//错误,因为s是只读的。
    char []chs = s.ToCharArray();
    chs [0] = b;
    //将字符数组转换成字符串
    s = new string(chs);

    //创建一个计时器,记录程序运行的时间
    Stopwatch sw = new Stopwatch();

    sw.start();//计时开始

    sw.Stop();//计时结束

    5.字符串的各种方法
    1)Length :获得当前字符串中字符的个数或数组中元素的个数。
    2)ToUpper():将字符串中的字符转换成大写
    3)ToLower():将字符串中的字符转换成小写。
    3)Equals(A ,B):可以忽略字符串的大小写,进行比较。
      corse1.Equals(corse2); //通过调用这个成员函数实现字符串比较
    //忽略大小写实现字符串的比较
    corse2.Equals(corse1,StringComparison.OrdinalIgnoreCase);

    4).Split(new char [] , StringSplitOptions.RemoveEmptyEnter);将不想要的字符放到new char[]中,实现分割字符,并把空字符移除掉。
    5)contain()用于判断是否包含某些字符串
    6)replace()将指定字符串替换掉
    7)substring(1,2)从第1位开始截取想要的2个字符。
    8).indexof()找字符串中字符第一次出现的位置。
    9).Lastindexof()找字符中最后一次出现的位置。
    10).Trim()同时去掉字符串前面和后面的空格
    11).TrimStart()去掉字符串中前面的空格
    12).TrimEnd()去掉字符串中后面的空格。
    13).IsNullOrEmpty()判断是Null 还是为Empty.
    14).Join()将给定的字符添加到数组元素的后面,最后一个不加。
    15).StartWith()判断是否以给定的字符串或字符开始。
    16).EndWith()判断是否以给定的字符串或字符结束。

    6.stringbuilder()用与字符串中大量的赋值或拼接。
    注意:详情见代码。

    7.//split实现将字符串转换成字符串数组,join实现将字符数组转换成字符串。
           //将 sharp c  hello  转换成hello c sharp
                string strSharp = "sharp  c  hello";
               string [] cShSplit = strSharp.Split(new char []{},StringSplitOptions.RemoveEmptyEntries);
               for (int i = 0; i < cShSplit.Length/2; i++)
               {
                   string temp = cShSplit[i];
                   cShSplit[i] = cShSplit[cShSplit.Length -1-i];
                   cShSplit[cShSplit.Length - 1 - i] = temp;
               }
               Console.WriteLine();
               //for (int i = 0; i < cShSplit.Length; i++)
               //{
                 
               //    Console.Write(cShSplit[i]);
               //}
               //strSharp = cShSplit.Join('|' , );
                //在数组元素间键入空格,并转换成字符串。
               strSharp = string.Join("  " , cShSplit);
               Console.WriteLine(strSharp);

  • 相关阅读:
    【tarjan】BZOJ 1051:受欢迎的牛
    【递推】BZOJ 1088: [SCOI2005]扫雷Mine
    【计算几何】多边形
    【贪心】Bzoj 2457:[BeiJing2011]双端队列
    【单调栈】Bzoj 1012: 最大数maxnumber
    [洛谷P3584] POI2015 LAS
    [洛谷P4049] JSOI2007 合金
    [51nod1533] 一堆的堆
    [AGC018E] Sightseeing Plan
    [CF1065E] Side Transmutations
  • 原文地址:https://www.cnblogs.com/jefy/p/9187789.html
Copyright © 2020-2023  润新知