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);

转载于:https://www.cnblogs.com/jefy/p/9187789.html

c#中string的操作相关推荐

  1. python中string的操作函数

    在python有各种各样的string操作函数.在历史上string类在python中经历了一段轮回的历史.在最开始的时候,python有一个专门的string的module,要使用string的方法 ...

  2. python字符串赋值与java区别_java和python细节总结和java中string 的+操作

    //JAVA中对arrayList的初始化,能够分配空间,不能之间让一个ArrayList赋值给另外一个ArrayList,这样是引用赋值,当一个改变时候,另外一个也改变 List tmp = new ...

  3. JVM学习笔记之-StringTable String的基本特性,内存分配,基本操作,拼接操作,intern()的使用,垃圾回收 ,G1中的String去重操作

    String的基本特性 string:字符串,使用一对""引起来表示. String s1 = ""; //字面量的定义方式 String s2 = new S ...

  4. Go 学习笔记(60)— Go 第三方库之 go-redis(初始化 redis、操作 string、操作 list、操作 set、操作 hset)

    1. 第三方库 go-redis 因为 Go 标准库中是没提供 redis 的库,所以我们选择用 go-redis 这个第三方库.源码地址为 https://github.com/go-redis/r ...

  5. string 相等 java_java中String相等问题

    1.首先介绍三个String对象比较的方法: (1)equals:比较两个String对象的值是否相等.例如: String str1 = "hello quanjizhu"; S ...

  6. java8 流操作_java8中的流操作

    Stream 流是 Java 8 新提供给开发者的一组操作集合的 API,将要处理的元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选.排序.聚合等.元素流在管道中经过 ...

  7. 2.Java中String,StringBuilder以及StringBuffer的关系与区别

    String     StringBuffer     StringBuilder String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且浪费大量 ...

  8. 标准C++中string类用法总结

    2019独角兽企业重金招聘Python工程师标准>>> 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好 ...

  9. android中的数据库操作(SQLite)

    android中的数据库操作 android中的应用开发很难避免不去使用数据库,这次就和大家聊聊android中的数据库操作. 一.android内的数据库的基础知识介绍 1.用了什么数据库   an ...

最新文章

  1. Android日志打印类LogUtils,能够定位到类名,方法名以及出现错误的行数并保存日志文件...
  2. 网站开启https后很慢_网站优化中哪些设置会影响蜘蛛的抓取?对网站SEO产生什么影响...
  3. P2089 烤鸡(python3实现)
  4. ActiveMQ-为什么需要消息中间件及优缺点
  5. “您都对”、“客户都对”也能申请为商标?
  6. 符号级别(一)--基础概念
  7. python epoll多路复用技术_python网络编程——IO多路复用之epoll
  8. Linux 查找进程与结束进程
  9. WIN7无法调试安卓手机,ADB Interface显示黄色叹号
  10. webpack之初体验
  11. 乐高mindstormsev3_乐高MINDSTORMSEV3软件程序模块开发
  12. 企业信息科技安全的三道防线及解决方案
  13. Mystery——团队作业——系统设计
  14. 隐枚举法求解0-1整数规划
  15. 如何才能达到阿里 P7 水平 ?
  16. Lecture 005-Duality theory
  17. HTML5: select标签
  18. 做自适应网站专业乐云seo_广州网站设计【乐云seo】
  19. 公共信息模型(CIM)
  20. NLP大杀器BERT模型解读

热门文章

  1. 使用异步Servlet改进应用性能
  2. JPA时间注解(转)
  3. 计算机界名人榜-----约翰·冯·诺依曼
  4. Jquery 【select 通过value来寻找对应的项name】
  5. 手写简版spring --5--资源加载器解析文件注册对象
  6. 大数运算(7)——大数阶乘(求阶乘)
  7. 计算机应用主要学PS,全国计算机一级Photoshop应用试题及答案
  8. android客户端证书到期了,在Android设备上生成客户端证书
  9. 【译】Thoughts and Goals on Qtum's x86 VM
  10. 【译】Diving Into The Ethereum VM Part 2 — How I Learned To Start Worrying And Count The Storage Cost