Files
2026-04-13 15:40:15 +08:00

1.6 KiB

隐式转换

相同大类型

一般都遵守 ==大的能装小的,小的装不了大的==

有符号(long int short sbyte)

无符号(ulong uint ushort byte)

浮点数(decimal double float) ==decimal没有办法隐式转换== 其他同规则

特殊类型(bool char string) ==不存在隐式转换==

不同大类型

==无符号不能隐式转换装有符号==

有符号装无符号需要==注意范围== int 不能装 uint (正方向少1)

==浮点数可以装任意类型的整数== ==decimal可以隐式存储整型==

==整数无法装浮点==

整理

大范围装小范围 高精度装低精度 string 和 bool 不参与隐式转换 decimal比较特殊 char是ASCII所以可以转换成整型和浮点型

double > float > 所有整型 decimal > 所有整型

显示转换

  1. 括号强转

    1. 精度和范围(丢精度和溢出)
    2. 语法:变量类型 变量名 = (变量类型)变量;
    3. EG: double double1 = (double)int1;
  2. Parse法(一般用来转换字符串到数字)

    1. ==字符串必须能够转换为对应类型== 否则报错
    2. 语法:变量类型.Parse("字符串")
    3. EG: int int1 = int.Parse("123");
  3. Convert法

    1. 注意点和Parse法一样,精度比强转准一点(有四舍五入)
    2. 语法:Convert.To变量类型(变量或常量)
    3. EG:int int1 = Conver.ToInt32("123")
  4. 其他类型转String

    1. 常用于拼接打印
    2. 语法:变量.toString();
    3. EG: string str = 1.ToString(); / 'A'.ToString(); / true.ToString();
    4. 特殊用法string str = "123123" + 1.23 + True;(隐式调用ToString方法了)

#入门