字符串的不可变性
这是字符串的最大特性,字符串对象一旦创建,就无法对其进行修改。
如下图:
对字符串进行修改之后,变量s也就不会再去引用字符串“abc”,而是指向新的字符串“abcd”。
String(Char[] charArray):将String类的新实例初始化为有Unicode字符数组指示的值。
String(Char ch,int num):将String类的新实例初始化为由重复指定次数的Unicode字符指示的值。
非常绕脑,直接上代码!
输入结果:
注意:
1.string和String都是可以创建字符串对象的。
但是不同的是,string类型是c#语言中用来表示字符串的类型,而String类型是.NET Framework通用类型系统中用来表示字符串的类型。
2.在程序开发过程中,这两种类型之所以都能表示字符串,是因为在程序编译时,c#语言中的string类型会被编译成.NET Framework通用类型系统的String类型。
代码块:
char[] ch = {'1','2','3' };
String str1 = new string(ch);
String str2 = new String('a',5);
Console.WriteLine("str1="+str1);
Console.WriteLine("str2="+str2);
Console.ReadKey();
1.int Compare(string str1,string str2)
比较两个字符串是否相等
2.string Format(string str,object obj)
格式化字符串
3.string Join(string str,string[] stra)
使用指定字符串连接字符串数组
**
**
Compare()方法用于比较两个字符串是否相等。若第一个字符串大于第二个字符串,则返回一个大于0的int整数;
相同则返回0;小于则返回一个小于0的int整数。
string str1 = "abcd";
string str2 = "abc";
string str3 = "abcde";
string str4 = "abc";
Console.WriteLine(String.Compare(str1,str2));
Console.WriteLine(String.Compare(str2,str3));
Console.WriteLine(String.Compare(str2,str4));
Console.ReadKey();
string str1 = "abcd";
string str2 = String.Format("字符串{0}包含{1}个字符",str1,str1.Length);
Console .WriteLine(str2);
Console .WriteLine(str1);
Console.ReadKey();
Join()方法的作用是使用指定的字符或者字符串,将字符串数组的元素连接起来。
string[] str1 = {"字符串","使用竖线","连接"};
string str2 = String.Join("|",str1);
Console.WriteLine(str2);
Console.ReadKey();