C#笔记整理(类型转换)

string myGoddess = "myGoddess";
char myWife = myGoddess;
//兄弟,编译器报错

类型转换

计算机里无论什么类型,最根本都是一些0和1组成的。变量的含义是通过翻译这些0和1来告诉你们。

  • 隐式转换:
    从类型A到类型B的转换交给编译器,即任何情况
  • 显示转换:
    从类型A到类型B需要代码处理,并不是任何情况下,需要编码人员自己决定

隐式转换

byte s = 10;
int i = s;
类型可以安全的转换为
byteshort,ushort,int,uint,long,ulong,float,double,decimal
sbyteshort,int,long,float,double,decimal
shortint,long,float,double,decimal
ushortint,uint,long,ulong,float,double,decimal
intlong,float,double,decimal
uintlong,ulong,float,double,decimal
longfloat,double,decimal
ulongfloat,double,decimal
floatdouble
charushort,int,uint,long,ulong,float,double,decimal

不需要记这些,编译器会告诉你的

显示转换

string myGoddess = "myGoddess";
char[] myWife =new char[myGoddess.Length];
myWife = myGoddess.ToArray();
//总要求个婚吧!

要告诉编译器,数值从一种类型转到另一种数据类型时需要一些方法。
C#中常用的有Convert指令,以及利用好ToString和.Parse()这两个方法。

枚举

enum Brothel
{
    XiaoHua=0,
    XiaoLi,
    XiaoMei
}

枚举容许定义一个类型,其取值范围是用户提供的值的有限集合
枚举的基本类型可以是byte、sbyte、short、ushort、int、uint、long、ulong。
默认情况下,每个值都会根据定义的顺序(从0开始),被自动赋予对应的基本类型值,还可以使用一个值作为另一个值的基础值,为多个枚举指定相同的值。

enum Brothel
{
    XiaoHua=0,
    XiaoLi=XiaoHua,
    XiaoMei
}

注意:未赋值的任何值都会自动获得一个初始值,这里使用的值是从比上一个明确声明的值大1开始的序列
例如

enum Brothel
{
    XiaoHua=0,
    XiaoLi,
    XiaoMao = XiaoHua,
    XiaoMei
}

此时XiaoMei的值和XiaoLi的值是相等的
枚举也可以用运与类型转换

public enum Letter
{
    a,
    b,
    c
}
static void Main(string[] args)
{
    char a = char.Parse(Letter.a.ToString());
    Console.WriteLine(a);
    //此时会输出a
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值