字符串常用方法
- ToUpper()
- 将字符转换成大写形式,仅对字母有效,返回值是转换后的字符串。
- 使用:字符串变量.方法名(); 如:name.ToUpper();
string name = "Shane"; Console.WriteLine("ToUpper:" + name.ToUpper()); //ToUpper:SHANE. Console.ReadKey();
- ToLower()
- 将字符转换成小写形式,仅对字母有效,返回值是转换后的字符串。
- 使用:字符串变量.方法名(); 如:name.ToLower();
- Equals()
- 比较两个字符串是否相同。相同返回真,不同返回假。
- 使用:字符串变量.方法名(要比较的字符串变量); 如:name.Equals(name2);
string name = "Shane"; string name_2 = "abc"; Console.WriteLine("Equals:" + name.Equals(name_2)); //Equals:False Console.ReadKey();
- Split()
- 分割字符串。返回字符串类型的数组。
- 使用:字符串变量.方法名(用于分割的字符数组); 如:name3.Split(m_char);
string address = "中国|北京|海淀|上地"; char[] c = new char[]{'|'}; string[] ad = address.Split(c); for(int i = 0; i < ad.Length; i++) { Console.WriteLine(ad[i]); } Console.ReadKey();
- Substring()
- 截取字符串。返回截取后的子串。
- 使用:字符串变量.方法名(开始截取的位置); 字符串变量.方法名(开始截取的位置,截取长度);
- name.Substring(2); //从角标为2的位置截取到最后。
- name.Substring(2,2); //从角标为2的位置截取2个字符。
- IndexOf()
- 查找某个字符串在字符串中第一次出现的位置。返回所在的索引位置值。如果没有找到,返回-1。
- 使用:字符串变量.方法名(子字符串); 如:name.IndexOf( "on" );
string name = "Shane"; Console.WriteLine("IndexOf:" + name.IndexOf("S")); //IndexOf:0. Console.WriteLine("IndexOf:" + name.IndexOf("a")); //IndexOf:2. Console.ReadKey();
- LastIndexOf()
- 查找某个字符串在字符串中最后一次出现的位置。返回所在的索引位置值。如果没有找到,返回-1。
- 使用:字符串变量.方法名(子字符串);
- StartsWith()
- 判断是否以...字符串开始。是,返回真;不是,返回假。
- 使用:字符串变量.方法名(子字符串);
- EndsWith()
- 判断是否以...字符串结束。是,返回真;不是,返回假。
- 使用:字符串变量.方法名(子字符串);
- Replace()
- 将字符串中的某个字符串替换成一个新的字符串。返回新的字符串。
- 使用:字符串变量.方法名(旧字符串,新字符串);
string name = "Shane"; Console.WriteLine("Replace:" + name.Replace("ne","w")); //Replace:Shaw. Console.ReadKey();
- Contains()
- 判断某个字符串中是否包含指定的字符串。包含,返回真;不包含,返回假。
- 使用:字符串变量.方法名(子字符串);
string name = "Shane"; Console.WriteLine("Contains:" + name.Contains("ne")); //Contains:True. Console.ReadKey();
- Trim()
- 去掉字符串中前后空格。返回处理后的字符串。
- 使用:字符串变量.方法名(); 如:address.Trim();
string name = " Shane"; Console.WriteLine(name); // Shane. Console.WriteLine("Trim:" + name.Trim()); //Trim:Shane. Console.ReadKey();
- TrimEnd()
- 去掉字符串结束后的空格。返回处理后的字符串。
- 使用:字符串变量.方法名(); 如:address.TrimEnd();
- TrimStart()
- 去掉字符串开始前的空格。返回处理后的字符串。
- 使用:字符串变量.方法名(); 如:address.TrimStart();
- IsNullOrEmpty()
- 判断一个字符串是否为 Null 或者空。如果为 Null 或者空,返回真;否则返回假。
- Null 不占内存空间,空字符串( “” )是占内存空间的。
- 使用:string.方法名(字符串变量); 如:string.IsNullOrEmpty(name);
string name = "Shane"; Console.WriteLine("IsNullOrEmpty:" + string.IsNullOrEmpty(name)); //IsNullOrEmpty:False. Console.ReadKey();
字符串的特点
- 字符串是引用类型
- 字符串的数据存储在堆空间,栈空间中存储的是该数据的引用地址。
- 字符串不可变
- 当给字符串变量重新赋值时,旧值并没有销毁,而是开辟了新的空间存储新值。
- 字符串可以看作是只读的字符数组
- 使用字符串变量[下标]的形式可以取字符串中指定的字符。
- 也可使用 for 循环遍历数组。
- 字符串变量.Length; 可以取得字符串字符的个数。