C#的基本数据类型
数据类型主要用于指明变量和常量存储值的类型,C#语言是一种强类型语言,要求每个变量都必须指定数据类型。
C#语言的数据类型分为值类型和引用类型。
值类型包括整型、浮点型、字符型、布尔型、枚举型等;引用类型包括类、接口、数组、委托、字符串等。
整型类型
所谓整型就是存储整数的类型,按照存储值的范围不同,C#语言将整型分成了byte类型、int类型、short类型、long类型等,并分别定义了有符号数和无符号数。
整型类型的分类、占用内存大小以及最大可表示范围如下表所示:
类型 | 取值范围 |
---|---|
byte | 无符号数,占用一个字节,0〜28-1 |
sbyte | 有符号数,占用一个字节,-27〜27-1 |
short | 有符号数,占用两个字节,-215〜215-1 |
ushort | 无符号数,占用两个字节,0〜216-1 |
int | 有符号数,占用四个字节,-231〜231-1 |
uint | 无符号数,占用四个字节,0〜232-1 |
long | 有符号数,占用八个字节,-263〜263-1 |
ulong | 无符号数,占用八个字节,0〜264-1 |
其中sbyte中的s字母是取自signed单词中的首字母,代表有符号;ushort、uint、ulong中的u字母是取自unsigned单词中的首字母,代表无符号。
浮点型
浮点型是指小数类型,浮点型在C#语言中共有两种,一种称为单精度浮点型,一种称为双精度浮点型。二者表示的精度范围不同。
在C#语言中默认的浮点型是double类型。如果要使用单精度浮点型,需要在数值后面加上f或F来表示,例如123.45f、123.45F。
类型 | 取值范围 |
---|---|
float | 单精度浮点型,占用4个字节,最多保留7位小数 |
double | 双精度浮点型,占用8个字节,最多保留16位小数 |
例如:
double dValue=1234.45;
float fValue=1234.45f;
C#中还有一种精度更高的浮点类型:decimal类型,它占16个字节
decimal类型专门用于进行财务计算,使用decimal类型提供的28位的方式取决于用户。
要把数字指定为decimal类型,可以在数字的后面加上字符M或(m)
举例如下:
decimal d=12.30M;
字符型
字符型只能存放一个字符,它固定占用两个字节,能存放一个汉字。
字符型用 char 关键字表示,存放到 char 类型的字符需要使用单引号括起来,例如’a’、‘中’ 等。
举例如下:
char c = ‘A’;
注意:字符型只能使用单引号。 双引号代表字符串类型。
布尔类型
C#语言中,布尔类型使用bool来声明,它只有两个值,即true和false。
当某个值只有两种状态时可以将其声明为布尔类型,例如,是否同意协议、是否购买商品等。
布尔类型的值也被经常用到条件判断的语句中,例如,判断某个值是否为偶数、判断某个日期是否是工作日等。
例如:
bool isModify = false; //是否变更。
字符串类型
字符串类型能存放多个字符,它是一个引用类型。
在字符串类型中存放的字符数可以认为是没有限制的,因为其使用的内存大小不是固定的而是可变的。
使用 string 关键字来存放字符串类型的数据。字符串类型的数据必须使用双引号括起来,例如 “abc”、“123” 等。
例如:
string strValue = “我是一个字符串”;
转义字符
在 C# 语言中还有一些特殊的字符串,代表了不同的特殊作用。由于在声明字符串类型的数
据时需要用双引号将其括起来,那么双引号就成了特殊字符,不能直接输出,转义字符的作
用就是输出这个有特殊含义的字符。
常用的转义字符如下表所示:
转义字符 | 等价字符 |
---|---|
\’ | 单引号 |
\" | 双引号 |
\\ | 反斜杠 |
\0 | 空 |
\a | 警告(产生蜂鸣音) |
\b | 退格 |
\f | 换页 |
\n | 换行 |
\r | 回车 |
\t | 水平制表符 |
\v | 垂直制表符 |
例如:
string testValue = “我叫’张三’,\n我来自海边。”;