C#基础string和StringBuilder

C#基础

stringStringBuilder的区别:tring不可变,StringBuilder是可变的

StringBuilder字符大小达到限制就会去申请新的内存区域,大小是原来的2倍
1、利用构造函数创造StringBuilder
System.Text.StringBuilder sb = new System.Text.StringBuilder("HelloWord");
2、初始化一个空的StringBuilder,大小为20
StringBuilder sb = new StringBuilder(20);
3、初始化了一个对象,初始化的对象是HelloWord,这个对象有20字符大小
StringBuilder sb =new StringBuilder("HelloWord",20);
StringBuilder追加字符串
4、当我们需要对一个字符串进行频繁的删除和添加,使用StringBuilder的效率会高于string
sb.Append("HaoShuai");

sb.Insert(0, "http://");

字符串
1、字符串的不可变性:当你重新给一个字符串赋值之后,老值并无销毁,会重新开辟一块新的内存储存。

当程序结束后,GC扫描整个内存,如果发现有的空间没有被指向,则立即把它销毁

2、我们可以将字符串看做是char类型的一个只读数组
ToCharArray();将字符串转换成Char数组
new string(char[] chs):能够将char数组转换成字符串

字符串提供的各种方法
1、Length获取字符串的长度个数。
2、ToUpper();将字符串转换成大写形式
3、ToLower();将字符串转换成小写形式
4、Equals(比较的字符串,StringComparison。OrdinalIgnoreCase);比较两个字符串,忽略大小写
5、Split();分割字符串,返回字符串数组

CompareTo : 比较字符串 返回值int -1,0,1
//CompareTo:字符串比较
string s = "jiangxinbin";
//当两个字符串相等的时候,返回0 如果当比较 j 时,就在字母表靠前返回1,靠后返回-1

int res = s.CompareTo("jiangxinbin");

Replace:把指定字符替换指定自定义字符 不影响原字符 字符换字符 字符串换字符串
string newSTr= s.Replace('.', '-');
string newSTr= s.Replace(“.”,“----”);

Split:在出现给定字符的地方,把字符串拆分成一个字符串数组

string[] strArray = s.Split('.');

foreach (var s1 in strArray)
{
        Console.WriteLine(s1);
}

Substring: 截取指定字符串位置后面的长度的字符串

string str = s.Substring(6);

ToLower : 把字符串转换成小写形式
ToUpper:把字符串转换成大写形式

Trim:删除收尾的空白

Concat:合并字符串
CopyTo:把字符串中指定的字符复制到一个数组中
Format:格式化字符串
indexOf取得字符串第一次出现某个给定字符串或者字符的位置
ndexOfAny
insert:把一个字符串实例插入到另一个字符串实例的制定索引处
Join:合并字符串数组,创建一个新的字符串

stringSystem.String 的别名
// stringStringBuilder的区别:string不可变,StringBuilder是可变的
// 当StringBuilder字符大小达到限制就会去申请新的内存区域,大小是原来的2倍
// 1、利用构造函数创造StringBuilder
//System.Text.StringBuilder sb = new System.Text.StringBuilder("JiangXinBIn");
// 2、初始化一个空的StringBuilder,大小为20
//StringBuilder sb = new StringBuilder(20);
// 3、初始化了一个对象,初始化的对象是JiangXinBin,这个对象有20字符大小
StringBuilder sb =new StringBuilder("JaingXinBin",20);

StringBuilder:
Append()方法,给当前字符串追加字符
insert()追加特定格式的字符串
Remove()从当前字符串中删除字符
Replace()在当前字符串中,用某个字符或者字符串全部替换另一个字符或字符串
ToSting()吧当前的StringBuilder中存储的字符串,提取成一个不可变得字符串

你可能感兴趣的:(C#基础string和StringBuilder)