C# 语言类型(二)—预定义类型之字符串及字符类型简述

总目录
C# 语法总目录
参考链接:
C#语法系列:C# 语言类型(一)---预定义类型值之数值类型
C#语法系列:C# 语言类型(二)---预定义类型之字符串及字符类型简述
C#语法系列:C# 语言类型(三)---数组/枚举类型/结构体
C#语法系列:C# 语言类型(四)---传递参数及其修饰符
C#语法系列:C# 语言类型(五)---其他

C# 语言类型 二---预定义类型:字符串及字符类型简述

字符串和字符类型简述

(1) 字符类型基本用法

字符类型表示一个Unicode字符或者一个转义字符,占用两个字节,字符类型可以直接转换成short类型,转成其他类型需要显示转换。

csharp 复制代码
char a = 'A';
char a = '\n'; 
(2) 字符串类型基本用法

字符串类型是引用类型,但是却遵循 == 运算时是进行值的比较,字符串类型无法使用 > < ,只能使用CompareTo方法

csharp 复制代码
string a = "hello";
string b = "nihao";
string c = "hello";
int v = a.CompareTo(b);
Console.WriteLine(a==c);
Console.WriteLine(v);
Console.ReadLine();
--输出
True
-1
@符号

string类型中,可以使用@表示内部不支持转义字符,所有的字符就是字符,没有别的意思。

注意 @符号因为还需要左右"" 两个引号把字符串框起来,所以在它们内部如果想输出双引号,那么需要两个双引号来表示一个双引号

csharp 复制代码
string a = "\n\n";	//输出两个换行
string b = @"\n\n";	//输出字符 \n\n
//两个双引号
string c = @"{name=""xiaoli""}"	//输出 {name="xiaoli"}
$ 符号

字符串插值,C#6.0版本以上才有,使用插值的使用,还可以使用冒号进行插值的格式化,略。

csharp 复制代码
int a = 10;
string b = $"num is {a}";
Console.WriteLine(b);

--输出
num is 10
$ 和 @ 结合使用

结合使用可以让插值字符串换行,但是必须 $ 在 @ 前面

csharp 复制代码
int a = 10;
string b = $@"num is {
a}, hhhhhh";
Console.WriteLine(b);
--输出
num is 10, hhhhhh
连接字符串

直接使用 + 加号可以直接连接字符串,但是,更好的解决方案是StringBuilder类型,如果需要频繁大量的连接字符串,那么请使用StringBuilder

csharp 复制代码
string a = "abc"+"d";

StringBuilder sb = new StringBuilder();
sb.Append("aa");
Console.WriteLine(sb.ToString());	//输出  aa

总目录
C# 语法总目录
参考链接:
C#语法系列:C# 语言类型(一)---预定义类型值之数值类型
C#语法系列:C# 语言类型(二)---预定义类型之字符串及字符类型简述
C#语法系列:C# 语言类型(三)---数组/枚举类型/结构体
C#语法系列:C# 语言类型(四)---传递参数及其修饰符
C#语法系列:C# 语言类型(五)---其他

相关推荐
好一点,更好一点13 分钟前
systemC示例
开发语言·c++·算法
不爱学英文的码字机器16 分钟前
[操作系统] 环境变量详解
开发语言·javascript·ecmascript
martian66520 分钟前
第17篇:python进阶:详解数据分析与处理
开发语言·python
五味香25 分钟前
Java学习,查找List最大最小值
android·java·开发语言·python·学习·golang·kotlin
时韵瑶30 分钟前
Scala语言的云计算
开发语言·后端·golang
卷卷的小趴菜学编程34 分钟前
c++之List容器的模拟实现
服务器·c语言·开发语言·数据结构·c++·算法·list
Code侠客行1 小时前
Scala语言的循环实现
开发语言·后端·golang
白鸽(二般)1 小时前
java上传图片功能实现
java·开发语言
hvinsion2 小时前
Python 电脑定时关机工具
开发语言·python·电脑