C# 学习入门整理 part 3

#region L4 转义字符
//转义字符是字符串的一部分 用来表示一些特殊含义的字符
//例如 在字符串中表现 单引号 引号 空格等等

//固定写法:\字符
//不同的 \和字符组合表示不同的含义
//常用的转义字符:
//单引号:\'
//双引号:\“
//光标退格:\b
//警报音:\a
#endregion
#region 取消转义字符
//在字符串前加入 @ 例如 console.writeline @("asdwa\asdw")
#endregion

#region L5 隐式转换
//隐式转换的基本规则:
//不同类型之间的转换
//大范围装小范围
#region 知识点1 相同大类型之间的转换
//有符号 long int short sbyte
long l = 1;
int z = 1;
short x = 1;
sbyte s = 1;
l = z;
l = x;
l = s;

//无符号 ulong uint ushort byte
//规则和 有符号 一样 都是大范围装小范围

//浮点数 decimal double float
decimal de = 1.1m;
double d = 1.1;
float f = 1.1f;
//decimal 这个类型 没有办法使用隐式转换的形式 去存储 double和float
//de = d; //会报错 
//de = f; //会报错
//float 可以隐式转换成double
d = f;

//特殊类型 bool char string
//他们之间不存在隐式转换
#endregion

#region 知识点2 不同大类型之间的转换
//本质上还是大范围装小范围

//无符号和有符号之间:
//无符号
byte b2 = 1;
ushort us2 = 1;
uint ui2 = 1;
ulong ul2 = 1;
//有符号
sbyte sb2 = 1;
short s2 = 1;
int i2 = 1;
long l2 = 1;
//有符号的变量不能隐式转换成无符号的 因为 无符号无法容下负数部分 即 无符号范围没有完全覆盖有符号范围

//浮点数和整数之间:
float f2 = 1.1f;
double d2 = 1.1;
decimal de2 = 1.1m;
f2 = l2;
f2 = us2;
f2 = ui2;
f2 = ul2;
f2 = sb2;
f2 = s2;
f2 = i2;
f2 = l2;
//浮点数 是可以装载任何类型的整数的 即可以装在有符号 和 无符号
//虽然decimal不能隐式转换float和double 但是可以装载整型
//整数不能装载浮点数 即 浮点数不能隐式转换成整数

//特殊类型(bool;char; string)和其他类型之间:
//彼此都不能进行隐式转换
//注意: char可以隐式转换为整形 其实转为了int类型 然后int类型又隐式转换为 其它 只针对于int可转换的类型 所以 对于short和byte等存储类型小于int的类型 无法表示为隐式转换
//即 char > int > short > byte 成立。 但是 char > short > byte 不成立。
//char 隐式转换成数值类型 所对应的数字 其实是一个ASCII码(ASCII:字符、中文、英文、标点符号 在计算机中都有对应的数字 这个数字就叫ASCII码)

#endregion

//总结:
//高精度(大范围) 装 低精度(小范围)
//double —> float —> 整数 —> char
//decimal—> 整数 —> char
//特殊类型中的 string 和 bool 不参与隐式转换
#endregion

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值