C#字符串(String)精讲
前⾔:本博⽂列举了C#字符串常⽤的属性、⽅法以及字符串的特点。
⽂章⽬录
⼀、字符串的概念
在使⽤ C# 编程时字符串是⽐较常⽤的⼀种数据类型,例如⽤户名、邮箱、家庭住址、商品名称等信息都需要使⽤字符串类型来存取。⼆、字符串的常⽤⽅法
属性或⽅法作⽤
Length获取字符串的长度,即字符串中字符的个数。
IndexOf返回整数,得到指定的字符串在原字符串中第⼀次出现的位置。
LastlndexOf返回整数,得到指定的字符串在原字符串中最后⼀次出现的位置。
StartsWith返回布尔型的值,判断某个字符串是否以指定的字符串开头。
EndsWith返回布尔型的值,判断某个字符串是否以指定的字符串结尾。
ToLower返回⼀个新的字符串,将字符串中的⼤写字母转换成⼩写字母。
ToUpper返回⼀个新的字符串,将字符串中的⼩写字母转换成⼤写字母。
Trim 返回⼀个新的字符串,不带任何参数时表⽰将原字符串中前后的空格删除。
参数为字符数组时表⽰将原字符串中含有的字符数组中的字符删除。
TrimStart返回⼀个新的字符串,将字符串中左侧的空格删除。
TrimEnd返回⼀个新的字符串,将字符串中右侧的空格删除。
PadLeft返回⼀个新的字符串,从字符串的左侧填充空格达到指定的字符串长度。
PadRight返回⼀个新的字符串,从字符串的右侧填充空格达到指定的字符串长度。
Split返回⼀个字符串类型的数组,根据指定的字符数组或者字符串数组中的字符 或字符串作为条件拆分字符串。
writeline特点Replace返回⼀个新的字符串,⽤于将指定字符串替换给原字符串中指定的字符串。
Substring返回⼀个新的字符串,⽤于截取指定的字符串。
Insert返回⼀个新的字符串,将⼀个字符串插⼊到另⼀个字符串中指定索引的位置。
Remove返回⼀个新的字符串,将字符串中指定位置的字符串移除。
Concat返回⼀个新的字符串,将多个字符串合并成⼀个字符串。
三、字符串⽐较⽅法
string.CompareTo(x,y);
string.Equals(x,y);
区别如下:
<1>:string.CompareTo⽐较结果的含义:
值含义
-1x ⼩于 y。 或 x 为 空引⽤(在 Visual Basic 中为 Nothing)。
0x 等于 y。
值含义
1x ⼤于 y。 或 y 为 空引⽤(在 Visual Basic 中为 Nothing)。
<2>:string.Equals⽐较结果的含义为:
值含义
true x 等于 y。
false x 不等 y。四、字符访问
下标访问s[i]
s ="ABCD";
Console.WriteLine(s[0]);// 输出"A";
Console.WriteLine(s.Length);// 输出4
Console.WriteLine();
Console.ReadKey();
五、打散为字符数组
ToCharArray
s ="ABCD";
char[] arr = s.ToCharArray();// 把字符串打散成字符数组{'A','B','C','D'}
Console.WriteLine(arr[0]);// 输出数组的第⼀个元素,输出"A"
Console.WriteLine();
Console.ReadKey();
六、格式化
静态⽅法Format
Console.WriteLine(string.Format("{0} + {1} = {2}",1,2,1+2));
Console.WriteLine(string.Format("{0} / {1} = {2:0.000}",1,3,1.00/3.00));
Console.WriteLine(string.Format("{0:yyyy年MM⽉dd⽇}", DateTime.Now));
Console.ReadKey();
七、连接成⼀个字符串
静态⽅法Concat、静态⽅法Join和实例⽅法StringBuilder.Append
s ="A,B,C,D";
string[] arr3 = s.Split(',');// arr = {"A","B","C","D"}
Console.WriteLine(string.Concat(arr3));// 将⼀个字符串数组连接成⼀个字符串,输出"ABCD"
Console.WriteLine(string.Join(",", arr3));// 以","作为分割符号将⼀个字符串数组连接成⼀个字符串,输出"A,B,C,D" StringBuilder sb =new StringBuilder();// 声明⼀个字符串构造器实例
sb.Append("A");// 使⽤字符串构造器连接字符串能获得更⾼的性能
sb.Append('B');
Console.WriteLine(sb.ToString());// 输出"AB"
Console.ReadKey();
⼋、判断字符串是否为空
ISNullOrEmpty:它是⽤来判断字符串是否为空。如果为空就返回true不为空返回false
string str ="";
Console.WriteLine(string.IsNullOrEmpty(str));
Console.ReadKey();
九、判断是否包含字符串
Contains:它是⽤来判断⼀个字符串是否包含另⼀个字符串的,如果包含就返回true,不包含就返回false
string name1 ="张三丰";
string name2 ="张三";
Console.WriteLine(name1.Contains(name2));
Console.ReadKey();
⼗、字符串的特点
1. 字符串是引⽤类型
字符串的数据是存储在堆空间,在栈空间中存储了该数据的引⽤地址。
2. 字符串是不可变的
当你给⼀个字符串变量重新赋值时,旧值并没有销毁,⽽是重新开辟⼀块空间来存储新值。
3. 字符串可以看做是是⾃读的字符数组
1. 使⽤字符串变量[下标]的形式可以取字符串中指定的字符。
2. 可以使⽤ for 循环变量数组。
3. 字符串变量.Length;可以取得字符串字符的个数。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论