C#
本随笔为个人复习巩固知识用,多从书上总结与理解得来,如有错误麻烦指正
C#字符串是使用string关键词声明的一个字符数组,它是一个对象,封装了所有字符串操作。C#字符串是不可修改的,所有对字符串的改变结果都只能存在另一个字符串中。
string str1 = "apple orange banana"; Console.WriteLine("str1:" + str1); //创建,创建一个字符串 string str2 = str1 + "peach"; Console.WriteLine("str2:" + str2); //比较,比较两字符串是否一致 if (String.Compare(str1, str2) == 0)//或者if(str1==str2) { Console.WriteLine("str1,str2,same"); } else { Console.WriteLine("str1,str2,not same"); } //查找,查找str1中空格位置,也可用来查找单个字符 int n = str1.IndexOf(' ', 0); Console.WriteLine("str1的第一个空格在第{0}个字符", n); //删除,删除str1第一个空格后的所有字符 str2 = str1.Remove(n); Console.WriteLine("删除后所得字符串:" + str2); //替换,将str1中空格替换为- str2 = str1.Replace(' ', '-'); Console.WriteLine("替换后字符串为:" + str2); //插入,在str1第一个空格后插入peach字符串 str2 = str1.Insert(n, "peach"); Console.WriteLine("插入后字符串为" + str2); //截取,取str1第一个空格后的6个字符 str2 = str1.Substring(n + 1, 6); Console.WriteLine("截取后的字符串为:" + str2); //拆解,以空格为标识符将str1拆分为多个新字符串 char chars = (' '); string[] strs = str1.Split(chars); Console.WriteLine("分解后字符串为:"); for(int i = 0; i < strs.Length; i++) { Console.WriteLine(i + ":" + strs[i]); } Console.ReadKey();
虽然String是引用类型,但String的比较和赋值是按值传递的。初始化空字符串有专门的方式。
static void Main(string[] args) { string str1 = string.Empty; string str2 = "";//两种初始化空串方式,前一种更优 if (string.IsNullOrEmpty(str1)) { }//判断字符串为空的方式 }
在编译的时候遇到两个问题
第一个:我参考的书上定义用来区分的字符时使用的语句是char[] chars={‘ ’};这样编译是不能通过的会显示空字符,我直接定义了单字符空格后解决了该问题
第二个:所有都完成后调试告知main不可用找不到入口,在检查后决定重开工程解决了该问题