这篇文章主要介绍了C#字符串怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C#字符串怎么使用文章都会有所收获,下面我们一起来看看吧。
字符串是引用数据类型,声明变量时,需要使用 string 关键字。
例如:
string str = "This is a string!";
值得注意的是,在 C# 中,字符串类型的变量一定是用双引号包裹的一串字符。而字符类型(char)使用单引号包裹起来的一个字符。
在 C# 中拼接字符串的方法有很多,下面列举几种比较常见的拼接方式:
可以直接使用 + 算术运算符,对字符串进行连接。
string s1 = "Hello";
string s2 = "World";
string s3 = s1 + s2;
Console.WriteLine(s3); // HelloWorld
字符串不仅是字符串之间可以拼接,而且可以和所有的数据类型进行拼接。这是因为所有数据类型都继承自 Object 这个基类,而 Object 中又有 toString 方法。因此,只要子类不重写这个方法,理论上来说,所有类型都可以转换为字符串类型。
string s = "asdf";
int i = 3;
float f = 3.2f;
bool b = true;
Console.WriteLine(s + i); // asdf3
Console.WriteLine(s + f); // asdf3.2
Console.WriteLine(s + b); // asdftrue
调用 string.Concat() 方法,传入参数即可以完成拼接字符串。参数的个数至少是两个。
string s1 = "I ";
string s2 = "\'m ";
int i = 18;
string s = string.Concat(s1, s2, i);
Console.WriteLine(s); // I 'm 18
string name = "小明";
int age = 22;
string s =string.Format("{0}今年{1}岁", name, age);
Console.WriteLine(s);
// 小明今年22岁
C# 6.0开始出现的 $ 方式,也可以用来拼接字符串。实际上其实就是 string.Format 的简化版。
string name = "小刚";
int num = 3;
string s = $"{name}盖了{num}米高的楼层。";
Console.WriteLine(s);
// 小刚盖了3米高的楼层。
字符串也是可以进行比较的,比较方法有如下几种:
string s1 = "Woooo";
string s2 = "Wooooa";
bool b = s1 == s2;
// false
string.Compare(s1, s2) 对传入的两个字符串的各个字符进行比较,如果每个字符的 Unicode 编码值一样,那么将会返回 0;如果比较到某个字符的编码值不一样,前者大则立刻返回 1;否则就返回 -1.
string s1 = "abb";
string s2 = "abc";
string s3 = "caa";
string s4 = "abc";
int n1 = string.Compare(s1, s2); // -1
int n2 = string.Compare(s3, s1); // 1
int n3 = string.Compare(s2, s4); // 0
该方法,还可以传入第三个参数,布尔值类型。当布尔参数为 true 的时候,将不会区分大小写。
string s1 = "abc";
string s2 = "ABC";
int n1 = string.Compare(s1, s2); // -1
int n2 = string.Compare(s1, s2, true); // 0
sting.Equals(s1, s2) 和上面的 string.Compare 很相似,不同的是前者返回的是 true 或者 false。
string s1 = "abc";
string s2 = "bbc";
string s3 = "aac";
string s4 = "abc";
bool b1 = string.Equals(s1, s2); // false
bool b2 = string.Equals(s1, s3); // false
bool b3 = string.Equals(s1, s4); // true
在上面已经有占位符的使用展示。
占位符,顾名思义,就是提前给你占位置,并标好标记。等人来,按照标记好的顺序坐下。
int n1 = 1;
int n2 = 2;
int n3 = 3;
Console.WriteLine("第{1}个位置,第{0}个位置,第{2}个位置", n1, n2, n3);
// 第2个位置,第1个位置,第3个位置
那么肯定会有这样的一种情况,来的路上突然有个人要加进来,但是位置提前安排了,结果不够坐,会发生什么事情?
int n1 = 1;
int n2 = 2;
int n3 = 3;
int n4 = 4;
Console.WriteLine("第{1}个位置,第{0}个位置,第{2}个位置", n1, n2, n3, n4);
// 第2个位置,第1个位置,第3个位置
很显然想要投机取巧的人,只配站着。
如果这个人不道德的话,不仅中途加入,还插在了第三个人前头,那么他成功了。
int n1 = 1;
int n2 = 2;
int n3 = 3;
int n4 = 4;
Console.WriteLine("第{1}个位置,第{0}个位置,第{2}个位置", n1, n2, n4, n3);
// 第2个位置,第1个位置,第4个位置
被插队的人就很遗憾只能站着了!
有时候主办方很聪明,料到有些人会不请自来,这时候会多安排一些个位置。可结果,人来少了,位置还多余了,会发生什么呢?
int n1 = 1;
int n2 = 2;
Console.WriteLine("第{1}个位置,第{0}个位置,第{2}个位置", n1, n2);
来的人就发现还有这么多位置没有人,看来这主办方不行啊,这台戏肯定不好看,散伙散伙!
从上面可以得出,位置可以少,但不能多;值可以多,但一定不能少,否则就会抛出以上这样的异常。
转移符号 \
转义字符即转移符号加上特定的字符组成的一个特殊字符,可以在编程表示一些内容:
转义字符 | 作用 |
---|---|
\' | 在字符串中显示单引号 |
\" | 在字符串中显示双引号 |
\t | 制表符,相当于 tab 键 |
\n | 换行,相当于敲下了回车键 |
\\ | 在字符串中显示斜杠符号 |
string s = "小明说:\"我很帅!\"\n小红说:\"\t\\yue\\\t\"";
Console.WriteLine(s);
关于“C#字符串怎么使用”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“C#字符串怎么使用”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。