关于.NET中的字符串的特性等你了解多少?
2015-01-05 10:40
330 查看
字符串的特性
1.不可变性
由于字符串是不可变的的,每次修改字符串,都是创建了一个单独字符串副本(拷贝了一个字符串副本)。之所以发生改变只是因为指向了一块新的地址。
ps:vs2005 即时窗口 &变量,取地址。。
vs2010以上 即使窗口 *变量 ,只取堆地址。
2.字符串池(只针对字符串常量)
当一个程序中有多个相同的字符串常量时,多个变量指向的是内存中同一块字符串!这个特性叫字符串池。之所以字符串,不会造成程序混乱,是因为字符串的不可变性。
String的成员方法和属性
PS:这里重载方式很多,不一一列举。
1.Contains(String str) 判断字符串中是否包含,指定字符串。
用法
string str =”helloworld”;
str.Contains(“hello”); //true
2.StartsWith(String str)
判断字符串对象是否以,指定字符串开头。
3.EndWith(String str)
判断字符串对象是否以,指定字符串结尾。
4.Length 属性
获取字符串的长度
5.IndexOf(String str)
获取指定字符/字符串…..在对象字符串中第一次出现的位置。
6.LastIndexOf(String str)
获取指定字符/字符串….在对象字符串中最后一次 出现的位置。
7.SubString(int start)
SubString(int strat, int length) 从指定位置,截取字符串。
8.ToLower()
将串转换成小写,返回一个新的全小写的字符串。
9.ToUpper()
将串转换成大写,返回一个新的全大写的字符串。
10. Replace(string oldStr,string newStr)
用新的字符串,替换对象字符串中老的字符串部分。
11.Trim() 去掉对象字符串两端的空格
TrimStart() 去掉对象字符串 开头的空格
TrimEnd() 去掉对象字符串 结尾的空格
PS:如果想去掉其他的开头结尾的其他字符其他的字符,可以采用Trim()的其他重载。
12.Split() 把对象字符串,按照指定字符分割成一个字符串数组!
Split() 的重载同样很多,
例如 Split(new char[]{‘|’}, StringSplitOption.RemoveEmptyEntries)// 删除空数据
String的静态方法
1.IsNullOrEmpty(string)
//string.IsNullOrEmpty(str1) 判断某字符串是否为null,或者为空字符串。
2.Equals(string,string,StringComparison.OrdianlIgnore)
忽略大小写比较两个字符串是否相同。
3.Join(string,string[])
把一个数组按照指定字符串,拼接成一个字符串。
1.不可变性
由于字符串是不可变的的,每次修改字符串,都是创建了一个单独字符串副本(拷贝了一个字符串副本)。之所以发生改变只是因为指向了一块新的地址。
ps:vs2005 即时窗口 &变量,取地址。。
vs2010以上 即使窗口 *变量 ,只取堆地址。
2.字符串池(只针对字符串常量)
当一个程序中有多个相同的字符串常量时,多个变量指向的是内存中同一块字符串!这个特性叫字符串池。之所以字符串,不会造成程序混乱,是因为字符串的不可变性。
String的成员方法和属性
PS:这里重载方式很多,不一一列举。
1.Contains(String str) 判断字符串中是否包含,指定字符串。
用法
string str =”helloworld”;
str.Contains(“hello”); //true
2.StartsWith(String str)
判断字符串对象是否以,指定字符串开头。
3.EndWith(String str)
判断字符串对象是否以,指定字符串结尾。
4.Length 属性
获取字符串的长度
5.IndexOf(String str)
获取指定字符/字符串…..在对象字符串中第一次出现的位置。
6.LastIndexOf(String str)
获取指定字符/字符串….在对象字符串中最后一次 出现的位置。
7.SubString(int start)
SubString(int strat, int length) 从指定位置,截取字符串。
8.ToLower()
将串转换成小写,返回一个新的全小写的字符串。
9.ToUpper()
将串转换成大写,返回一个新的全大写的字符串。
10. Replace(string oldStr,string newStr)
用新的字符串,替换对象字符串中老的字符串部分。
11.Trim() 去掉对象字符串两端的空格
TrimStart() 去掉对象字符串 开头的空格
TrimEnd() 去掉对象字符串 结尾的空格
PS:如果想去掉其他的开头结尾的其他字符其他的字符,可以采用Trim()的其他重载。
12.Split() 把对象字符串,按照指定字符分割成一个字符串数组!
Split() 的重载同样很多,
例如 Split(new char[]{‘|’}, StringSplitOption.RemoveEmptyEntries)// 删除空数据
String的静态方法
1.IsNullOrEmpty(string)
//string.IsNullOrEmpty(str1) 判断某字符串是否为null,或者为空字符串。
2.Equals(string,string,StringComparison.OrdianlIgnore)
忽略大小写比较两个字符串是否相同。
3.Join(string,string[])
把一个数组按照指定字符串,拼接成一个字符串。
相关文章推荐
- .NET中的字符串你了解多少?
- .NET中的字符串你了解多少?
- .NET中的字符串你了解多少?
- .NET中的字符串你了解多少?
- 关于Java字符串的拼接,你了解多少?
- .NET中的字符串你了解多少?
- 关于Java反射你了解多少
- 关于更清楚地了解.net的垃圾回收机制
- 探讨两道.Net关于字符串的上机题
- 探讨两道.Net关于字符串的上机题
- 判断一个字符串有多少个字节(js、.net 、Oracle)(
- 关于.net连接字符串
- 了解实际开发中 Hashtable 的特性原理 .NET, JAVA, PHP (之二)
- 了解实际开发中 Hashtable 的特性原理 .NET, JAVA, PHP (之二)
- “.NET研究”关于C# 中的Attribute 特性
- C# 特性(Attribute)学习 关于 .net中[]的解释
- 关于更清楚地了解.net的垃圾回收机制
- .NET 2.0 基础技术列表,你了解多少?
- 了解实际开发中 Hashtable 的特性原理 .NET, JAVA, PHP (之一)
- 关于微软的Servers产品,你的了解有多少?