2020-12-11关于数据类型转化内及stringbuilder

内置值类型的关键字、范围、大小、结构

关键字

bool

sbyte

byte

short

ushort

int

uint

long

ulong

decimal

char

double

float

结构

Boolean

SByte

Byte

Int16

UInt16

Int32

UInt32

Int64

UInt64

Decimal

Char

Double

Single

范围

true、false

-128到127 0到255

-32768到32767

0到65535

-2,147,483,648到

2,147,483,647

0 到 4,294,967,295

-9,223,372,036,854,775,808 到

9,223,372,036,854,775,807

0 到 18,446,744,073,709,551,615

±1.0 x 10-28 

至 ±7.9228 x 1028

U+0000

到 U+FFFF

±5.0 × 10−324 

到 ±1.7 × 10308

±1.5 x 10−45 

至 ±3.4 x 1038

大小

 

8位带符号

无符号8位

16位带符号

无符号16位

32带符号

无符号32位

64位带符号

无符号64位

16字节

16位

8字节

4字节

与Java不同,c#无包装类,bool是Boolean的别名,没什么区别。

string实例化时一般不需要用new,除非是使用字符数组初始化字符串。

1、string赋初始值时 string ="" 和 string = null不同 ,前者分配了内存,只是内存里的值为空字符串,后者并没有分配内存,推荐使用前者,避免引发NullReferenceException(尝试取消引用空对象引用时引发的异常

2、string字符串对象不可变,而平时所见到的string a = "hello"; b = "world"; a += b; Console.WriteLine(a);所得到的结果为hello world ,只是重新创建了一个对象,并将字符串指向该新对象,并将原对象交给GC,所以需要常常用到字符串拼接的时候,不要使用string而是StringBuilder

3、正常打印时会有转义,所以需要注意转义字符

转义序列

\'

\"

\\

\0

\a

\b

\f

\n

\r

\t

\v

\u

\U

\x

字符名称

单引号

双引号

反斜杠

null

警报

backspace

换页

换行

回车

水平制表

垂直制表

Unicode转义UTF-16

Unicode转义UTF-32

可变长度其它同\u

Unicode编码

0x0027

0x0022

0x005C

0x0000

0x0007

0x0008

0x000C

0x000A

0x000D

0x0009

0x000B

0000-FFFF

000000-10FFFF

0-FFFF

4、字符串内插

//推荐方法
string str1 = "hello", str2 = "world";
Console.WriteLine($"{str1},{str2}");
//output:hello,world

//不推荐的string.Format方法
Console.WriteLine(“{0},{1},yep”,str1,str2);
//output: hello,world,yep

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值