C#数据类型数值类型文本类型其他类型明明白白学C#大学霸
C#数据类型数值类型文本类型其他类型明明白白学C#大学霸
1.4 数据类型C#数据类型数值类型文本类型其他类型明明白白学C#大学霸
由于变量指代了数据,所以从变量名称上,编译器是看不到数据。这个时候,变量a可能指代整数10,也可能指代字符串”C#”。对于人来说,这不是任何问题。但这对计算机来说,是非常麻烦的一件事情。为了方便计算机去识别每个变量可能指代的数值,计算机提出了数据类型的概念。
1.4.1 数值类型C#数据类型数值类型文本类型其他类型明明白白学C#大学霸
根据是否包含小数位,数值类型分为整数类型和实数类型。下面来看这两种数值类型对应的数据类型。
1.整数类型
整数类型的变量指代的数据是整数。根据常见整数的大小数值,C#将整数分为8种类型。这8种整数的数据类型的名称、具体说明、取值范围如表1.7所示。
表1.7 整数类型
数据类型 | 说明 | 取值范围 |
sbyte | 有符号8位整数 | -128-127 |
byte | 无符号8位整数 | 0-255 |
short | 有符号16位整数 | -32768-32767 |
ushort | 无符号16位整数 | 0-65535 |
int | 有符号32位整数 | -2147489648-2147483647 |
uint | 无符号32位整数 | 0-42994967295 |
long | 有符号64位整数 | -263-263 |
ulong | 无符号64位整数 | 0-264 |
使用的时候,尽量根据数值可能的大小,选择最小的范围。在这八种类型中,常用的整数类型是int和long。
【示例1-15】在日常生活中,车的速度一定是大于0的整数,最高可能比255大。因此,车速可以选择使用类型为ushort的数据。一般情况下,人的年龄是大于0的整数,高寿的可能大不过255岁。因此,表示人的年龄可以选择使用类型为byte的数据。在数学计算中,光速为3*108m/s。要表示该数值,应该选择的数据类型为uint。
因此,使用的时候,可以根据数值的需求,选择合适的数据类型。
2.实数类型
实数类型的数据也叫浮点型数据。浮点型变量指代的数据是小数。根据精度的不同,C#提供了单精度浮点型(float)和双精度浮点型(double)。float类型表示32位的单精度浮点数,double类型表示64位的双精度浮点数。
C#中还有一种特殊的实数类型,即decimal类型。与浮点型相比,decimal类型具有较高的精度,但取值范围较小。该类型通常用来表示财务计算和货币计算,表示128位的数值。实数类型的三种数据的名称、说明及取值范围如表1.8所示。
表1.8 实数类型
数据类型 | 说明 | 取值范围 |
float | 32位单精度实数 | 1.5E-45-3.4E38 |
double | 64位双精度实数 | 5.0E-324-1.7E308 |
demcimal | 128位十进制实数 | 1.0E-28-7.9E28 |
实数类型在选择的时候,尽量根据数据对精度的要求,来选择合适的数据类型。最常用的实数类型为double类型。
【示例1-16】在日常生活中,数据的计算没有很高的精度要求,float类型即可满足需求。而在学术研究中,要求数据的准确性越高越好。因此可以选择使用double类型。在公司的财务部,用来计算财务方面的数据,可以选择使用demcimal数据类型。
1.4.2 文本类型
现实世界中的文本在计算机中被称为字符和字符串。因此文本类型的数据包括字符类型和字符串类型。字符类型使用关键字char表示,该类型表示一个16位的unicode字符。字符串类型使用关键字string表示,该类型表示的是一个字符序列。文本类型的两种数据类型名称、说明及取值范围如表1.9所示。
表1.9 文本类型
数据类型 | 说明 | 取值范围 |
char | 16位单Unicode字符 | 文本中使用的Unicode符号 |
string | 字符序列 | 无 |
注意:char类型的文本数据使用单引号(’)加单个字符表示,string类型的文本数据则使用双引号(”)加任意个字符表示。
1.4.3 其他类型
现实中,大多数事情都有对与错(真与假)之分,计算机中也不例外。布尔(bool)类型表示真或假值。它只包含两个值:true和false,而且这两个值意义恰好相反。因此bool类型的变量只能取这两个值中的一个。
综上所述,数字类型、文本类型、布尔类型的数据都是变量直接包含值,因此可以统称为值类型C#数据类型数值类型文本类型其他类型明明白白学C#大学霸。
Comments are closed.