研究switch documentation并发现它只能打开 整数类型 我着手寻找定义。我找不到任何地方。我只能find a list of integral types。
我可以猜测整数类型是整合到语言中的类型,但是我对正确的定义更满意。有人有吗?
答案 0 :(得分:26)
“积分”是指整数类型(即整数)。在C#中,这意味着类似int
,long
,short
等类型。
请参阅Integral Types Table (C# Reference):
下表显示了整数类型的大小和范围,它们构成了简单类型的子集。
编辑:请记住,switch
语句也支持文字字符串。
答案 1 :(得分:11)
您正在学习的文档是在2003年编写的,并且不是最新版本的语言的最新版本。我建议您停止研究2003文档的存档,如果您使用的是更现代版本的C#,请阅读2010文档。
回答你问题的权威性参考文献是C#规范第8.7.2节,为了方便起见,我为此再现了一部分。
交换机的管理类型 声明由交换机建立 表达。
•如果是的类型 switch表达式是sbyte,byte, 简而言之,ushort,int,uint,long,ulong, bool,char,string或enum-type, 或者如果它是可以为空的类型 对应于这些类型中的一种, 那就是这个的统治类型 切换声明。
•否则, 一个用户定义的隐式 转换必须存在于 switch表达式的类型为1 以下可能的管理 类型:sbyte,byte,short,ushort, int,uint,long,ulong,char,string, 或者,对应于的可空类型 其中一种类型。
•否则,如果 没有这种隐式转换,或 如果不止一个这样含蓄 转换存在,编译时 发生错误。
答案 2 :(得分:4)
这里使用的“整体”意义是http://www.merriam-webster.com/dictionary/integral第1小节b子小节1(!)中的意义:
存在,包含或与一个或多个数学整数相关