Length //判断字符串的长度,个数
方法:
IsNullOrEmpty()//判断是否为Null或””
ToCharArray() //将字符串变成数组 将string转换为char[]
string msg = "大家好,欢迎来到中国!";
char[] chs = msg.ToCharArray();
for (int i = 0; i < length; i++)
{
char[i]='A';
}
for (int i = 0; i < length; i++)
{
Console.WriteLine(chs[i]);
}
msg=new string(chs);//将 char数组转换成字符串
Equals()// “==” 对于字符串==就表示比较两个字符串中的值是否相同,不是地址。
string s1 = "Welcome to China";
string s2 = "welcome to china";
//StringComparison.OrdinalIgnoreCase 忽略大小写
if (s1.Equals(s2,StringComparison.OrdinalIgnoreCase))
{
Console.WriteLine("相同");
}
else
{
Console.WriteLine("不相同");
}
ToLower() 小写,必须接收返回值。(因为:字符串的不可变);
ToUpper() 大写。
IndexOf() 获取字符串中 字符或字符串的一次 出现的位置
如果没有找到对应的数据,返回-1 有多个重载 返回要找的第一个 索引位置
LastIndexOf() 如果没有找到对应的数据,返回-1
Substring() //2个重载
Split() //截取字符串
Join() 静态方法
Format () 静态方法
Replace() Trim()
注意:对字符串的操作一定要用变量接收返回值。(字符串是不能变的,每次都是构建一个新的字符串)
实例:
#region ToCharArray
//string msg = "dsgsdfgdsdfgd";
//char[] chs = msg.ToCharArray();
//for (int i = 0; i < chs.Length; i++)
//{
// chs[i] = 'A';
//}
//for (int i = 0; i < chs.Length; i++)
//{
// Console.WriteLine(chs[i]);
//}
//msg = new string(chs);
//Console.WriteLine(msg);
#endregion
#region Equals
//string s1 = "Welcome to China";
//string s2 = "welcome to china";
//bool b = s1.ToLower().Equals(s2.ToLower()); //不忽略大小写
//Console.WriteLine(b);
//if (s1 == s2)//不忽略大小写 同样调用 Equals
//{
// Console.WriteLine("相同");
//}
//else
//{
// Console.WriteLine("不相同");
//}
//string s1 = "Welcome to China";
//string s2 = "welcome to china";
StringComparison.OrdinalIgnoreCase 忽略大小写
//if (s1.Equals(s2,StringComparison.OrdinalIgnoreCase))
//{
// Console.WriteLine("相同");
//}
//else
//{
// Console.WriteLine("不相同");
//}
#endregion
#region IndexOf
//string msg = "Hello Welcome to China,And China is a beautiful Country.";
返回China在整个字符串msg字符串第一次出现的索引位置
//int index = msg.IndexOf("China");
忽略钱20个字符从第21个开始找,返回值,,是被找到字符在整个字符串中的索引位置
//int index2 = msg.IndexOf("t", 21);
返回的是从0开始,最后一次出现索引的位置
//int lastIndex = msg.LastIndexOf("t");
//Console.WriteLine(index);
#endregion
#region SubString
//string msg = "thank you China";
从第六个开始截取,截取3个字符
//msg= msg.Substring(6, 3);
//Console.WriteLine(msg);
#endregion
#region Split1
//string msg = "本次参加大会的人有:杨中科,yxk,yangzhongke";
//int index=msg.IndexOf(":")+1;
这样就得到了杨中科,yxk,yangzhongke
//msg= msg.Substring(index);
//string[] names= msg.Split(',');
//foreach (string item in names)
//{
// Console.WriteLine(item);
//}
#endregion
#region Split2
//string msg = "火箭|公牛||||热火|湖人||雷霆";
string[] teamNames = msg.Split('|');
StringSplitOptions.RemoveEmptyEntries表示删除空实体
当使用StringSplitOptions.RemoveEmptyEntries时候,第一个参数必须数组,
//string[] teamNames = msg.Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries);
//for (int i = 0; i < teamNames.Length; i++)
//{
// Console.WriteLine(teamNames[i]);
//}
#endregion
#region Split3
//string msg = "火箭|公牛☆小牛★热火,湖人";
//string[] teamNames = msg.Split(new char[] { '|', '☆', '★', ',' }, StringSplitOptions.RemoveEmptyEntries);
//for (int i = 0; i < teamNames.Length; i++)
//{
// Console.WriteLine(teamNames[i]);
//}
#endregion
#region Join
Join是把字符串连接起来,变成新的字符串
//string[] names = { "热火", "尼克斯", "太阳", "活人" };
//string result = string.Join("$", names);
//Console.WriteLine(result);
#endregion
#region Format
string.Format 与 Console.WriteLine()在格式化字符串方面是一致的
只不过string.Format有返回值,而Console.WriteLine()没有
Console.WriteLine("大家好,我叫{0},今年{1},至今未婚","张小三",38);
//string s=string.Format("大家好,我叫{0},今年{1},至今未婚","张小三",38);
//Console.WriteLine(s);
#endregion
#region Replace
//string msg = "北京你好,这里是错别字博克,你好博克博克 ";
//msg = msg.Replace("博克", "博客");
//Console.WriteLine(msg);
#endregion