C#的显式枚举转换

显式枚举转换包括以下内容:

●从sbye,byte,short,ushort,int,uint,long,ulong,char,float,double,或decimal到任何枚举类型。

●从任何枚举类型到sbyte,byte,short,ushort,int,uint,long,ulong,char,float,double,或decimal。

●从任何枚举类型到任何其它枚举类型。

显式枚举转换是这样进行的:它实际上是枚举类型的元素类型与相应类型之间的隐式或显式转换。比如,有一个元素类型为int的枚举类型E,则当执行从E到byte的显式枚举转换时,实际上作的是从int到byte的显式数字转换;当执行从byte到E的显式枚举转换时,实际上是执行byte到int的隐式数字转换。

比如,对程序6-2,我们改写如下:

程序清单6-7:

using System;

enum Weekday{
   Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday
};

class Test

{
  public static void Main(){
     Weekday day;
     day=(Weekday)3;
     Console.WriteLine(day);
  }
}

程序的输出是:

3

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索int
, 程序
, byte
, 类型
, 元素
, decimal
显式类型转换
c站、c语言、cf、ch、c罗,以便于您获取更多的相关知识。

时间: 2024-07-30 21:40:38

C#的显式枚举转换的相关文章

C#的显式引用转换

显式引用转换包括: ●从对象到任何引用类型 ●从类类型S到类类型T,其中S是T的基类. ●从基类型S到接口类型T,其中S不是密封类,而且没有实现T. ●从接口类型S到类类型T,其中T不是密封类,而且没有实现S. ●从接口类型S到接口类型T,其中S不是T的子接口. 从元素类型为Ts的数组类型S到元素类型为Tt的数组类型T的转换,这种转换需要满足下列条件: ●S和T只有元素的数据类型不同,而维数相同. ●Ts和Tt都是引用类型. ●存在从Ts到Tt的显式引用转换. ●从System.Array到数组

C#的显式数值转换

显式数值转换是指当不存在相应的隐式转换时,从一种数字类型到另一种数字类型的转换.包括: ●从sbyte到byte,ushort,uint,ulong,或char. ●从byte到sbyte或char. ●从short到sbyte,byte,ushort,uint,ulong,或char. ●从ushort到sbyte,byte,short,或char. ●从int到sbyte,byte,short,ushort,uint,ulong,或char. ●从uint到sbyte,byte,short,

C#的隐式枚举转换

隐式枚举转换允许把十进制整数0转换成任何枚举类型,对应其它的整数则不存在这种隐式转换.还是让我们用例子来说明. 程序清单6-2: using System; enum Weekday{ Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday }; class Test { public static void Main(){ Weekday day; day=0; Console.WriteLine(day); } } 程序的输出是: 0

C#的显式类型转换

显式类型转换,又叫强制类型转换.与隐式转换正好相反,显式转换需要用户明确地指定转换的类型.比如下面的例子把一个类型显式转换为类型: long l=5000; int i=(int)l; 上一章介绍的拆箱转换就是一种显式转换.这里我们还将讲解以下转换的规则: ●显式数值转换 ●显式枚举转换 ●显式引用转换 显式转换可以发生在表达式的计算过程中.它并不是总能成功,而且常常可能引起信息丢失. 显式转换包括所有的隐式转换,也就是说把任何系统允许的隐式转换写成显式转换的形式都是允许的,如: int i=1

javascript显式类型转换实例分析

  javascript显式类型转换实例分析         这篇文章主要介绍了javascript显式类型转换,实例分析了javascript实现类型转换的常用技巧,非常具有实用价值,需要的朋友可以参考下 本文实例讲述了javascript显式类型转换的方法.分享给大家供大家参考.具体分析如下: 尽管js可以做许多自动类型转换,但某些时候仍然需要做显示类型转换或为了代码逻辑清晰易读而做显示类型转换. 做显示类型转换最简单的方法就是用Boolean().Number().String()或Obj

MySQL5.7 : 对隐式锁转换的优化

MySQL5.7 : Reduce lock_sys_t::mutex contention when converting implicit lock to an explicit lock worklog: http://dev.mysql.com/worklog/task/?id=6899 Rev: http://bazaar.launchpad.net/~mysql/mysql-server/5.7/revision/5743 背景: 1.什么是隐式锁 所谓的隐式锁,可以理解成一个记录标

显式的进行类型转换是什么意思

问题描述 显式的进行类型转换是什么意思 解决方案 显式就是加上一个括号类型.比如 int x = 1; char c = x; //错误,必须写 char c = (char)x; 反过来 char c = 'a'; int x = c; //不需要写类型转换,但是编译器会自动加上,这个叫隐式转换. 但是也可以写: int x = (int)c; //这么写更清楚一些.

javascript显式类型转换实例分析_javascript技巧

本文实例讲述了javascript显式类型转换的方法.分享给大家供大家参考.具体分析如下: 尽管js可以做许多自动类型转换,但某些时候仍然需要做显示类型转换或为了代码逻辑清晰易读而做显示类型转换. 做显示类型转换最简单的方法就是用Boolean().Number().String()或Object()函数: Number("3") //3 String(false) //"false" false.toString()//同上 Boolean([]) //true

c++显式类型转换示例详解_C 语言

标准C++包含一个显式的转换语法: static_cast:用于"良性"和"适度良性"的转换,包括不用强制转换 const_cast:用于"const"和/或"volatile"进行转换 reinterpret_cast:转换为完全不同的意思.为了安全的使用它,关键必须转换回原来的类型.转换成的类型一般只能用于位操作,否则就是为了其他隐秘的目的.这是所有转换中最危险的. dynamic_cast:用于类型安全的向下转换 ---