C# 数据类型

C# 数据类型

正如变量一章中所解释的,C# 中的变量必须是指定的数据类型:

实例

int myNum = 5;               // 整数
double myDoubleNum = 5.99D;  // 浮点数
char myLetter = 'D';         // 字符
bool myBool = true;          // 布尔值
string myText = "Hello";     // 字符串

亲自试一试

数据类型指定变量值的大小和类型。

为相应的变量使用正确的数据类型是很重要的;这样可以避免错误,节省时间和内存,而且也会使您的代码更易于维护和阅读。最常见的数据类型有:

数据类型 大小 描述
int 4 字节 存储从 -2,147,483,648 到 2,147,483,647 的整数
long 8 字节 存储从 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 的整数
float 4 字节 存储分数数值。足以存储 6 到 7 位小数
double 8 字节 存储分数数值。足以存储 15 位小数
bool 1 位 存储 true 或 false 值
char 2 字节 存储单个字符/字母,用单引号括起来
string 2 字节/字符 存储一系列字符,用双引号括起来

数字

数字类型分为两组:

整数类型存储正数或负数(如 123 或 -456),不带小数。有效的类型有 intlong。应该使用哪种类型,取决于数值。

浮点类型表示带有小数部分的数字,包含一个或多个小数。有效的类型有 floatdouble

提示:尽管 C# 中有许多数字类型,但最常用的数字类型是 int(用于整数)和 double(用于浮点数)。但是,随着您继续阅读,我们将一一介绍它们。

整数类型

Int

int 数据类型可以存储从 -2147483648 到 2147483647 的整数。通常,在我们的教程中,当我们创建带有数值的变量时,int 数据类型是首选的数据类型。

实例

int myNum = 100000;
Console.WriteLine(myNum);

亲自试一试

Long

long 数据类型可以存储从 -9223372036854775808 到 9223372036854775807 的整数。当 int 不足以存储值时,请使用此类型。请注意,您应该以 L 结尾:

实例

long myNum = 15000000000L;
Console.WriteLine(myNum);

亲自试一试

浮点类型

每当您需要带有小数的数字(如 9.99 或 3.14515)时,都应使用浮点类型。

floatdouble 数据类型可以存储小数。请注意,对于 float 应以 F 结尾,对于 double 应以 D 结尾:

Float 实例

float myNum = 5.75F;
Console.WriteLine(myNum);

亲自试一试

Double 实例

double myNum = 19.99D;
Console.WriteLine(myNum);

亲自试一试

使用浮动还是双精度?

浮点值的精度指示该值在小数点后可以有多少位数字。float 的精度只有六到七位小数,而 double 变量的精度约为 15 位。因此,对于大多数计算而言,使用 double 更安全。

科学计数法

浮点数也可以是带有 e 的科学计数法,表示 10 的幂:

实例

float f1 = 35e3F;
double d1 = 12E4D;
Console.WriteLine(f1);
Console.WriteLine(d1);

亲自试一试

布尔值

布尔数据类型使用 bool 关键字声明,并且只能取值 truefalse

实例

bool isCSharpFun = true;
bool isFishTasty = false;
Console.WriteLine(isCSharpFun);   // 输出 True
Console.WriteLine(isFishTasty);   // 输出 False

亲自试一试

布尔值主要用于条件测试,您将在后面的章节中了解更多信息。

字符

char 数据类型用于存储单个字符。字符必须用单引号括起来,如 'A''c'

实例

char myGrade = 'B';
Console.WriteLine(myGrade);

亲自试一试

字符串

string 数据类型用于存储字符(文本)序列。字符串值必须用双引号括起来:

实例

string greeting = "Hello World";
Console.WriteLine(greeting);

亲自试一试