当前位置: 首页 > 文章教程  > 计算机与互联网 > 网络编程

3.4变量

8/31/2020 9:56:04 PM 人评论

3.4变量

图片 1 知识点讲解:光盘:视频\PPT讲解(知识点)\第3章\变量.mp4

数据是C#体系中的必备元素,就像人人都有目标一样,是必不可少的!C#中的数据分为变量和常量两种。通过C#变量可以影响到应用程序中数据的存储,因为数据可以被存储在变量中。在编程语言中,变量是内存地址的名称。变量包括名称、类型和值3个主要元素。各元素的具体说明如下。

  • 变量名:变量在程序代码中的标识。
  • 变量类型:决定其所代表的内存大小和类型。
  • 变量值:变量所代表内存块中的数据。

在本节的内容中,将对C#变量的基本构成进行简要介绍。

因为C#支持.NET框架定义的类,所以C#的变量类型是用类来定义的,即所有的类型都是类。C#类型的具体说明如表3-1所示。

由表3-1可以看出,C#变量的常用类型有引用类型和值类型两大类。

表3-1 C#类型信息

类 型

描 述

值类型

简单类型

符号整型:sbyte,shote,int,long

无符号整型:byte,ushort,uint,ulong

Unicode字符:char

浮点型:float,double

精度小数:decimal

布尔型:bool

枚举类型

枚举定义:enum name{}

结构类型

结构定义:Stroct name{}

引用类型

类类型

最终基类:object

字符串:string

定义类型:class name

接口类型

接口定义:interface

数组类型

数组定义:int[]

委托类型

委托定义:delegate name


1.引用类型

引用类型是C#的主要类型,在引用变量中保存的是对象的内存地址。引用类型具有如下5个特点。

  • 需要在委托中为引用类型变量分配内存。
  • 需要使用new运算符创建引用类型的变量,并返回创建对象的地址。
  • 引用类型变量是由垃圾回收机制来处理的。
  • 多个引用类型变量都可以引用同一对象,对一个变量的操作会影响到另一个变量所引用的同一对象。
  • 引用类型变量在被赋值前的值都是null。

在C#中,所有被称为类的变量类型都是引用类型,包括类、接口、数组和委托。具体说明如下。

  • 类类型:功能是定义包含数据成员、函数成员和嵌套类型的数据结构,其中的数据成员包括常量和字段,函数成员包括方法、属性和事件等。
  • 接口:功能是定义一个协定,实现某接口的类或结构必须遵循该接口定义的协定。
  • 数组:是一种数据结构,包含可通过计算索引访问的任意变量。
  • 委托:是一种数据结构,能够引用一个或多个方法。

2.值类型

如果程序中只有引用类型,那么往往会影响整个程序的性能,而值类型的出现便很好地解决了这个问题。值类型是组成应用程序的最为常见的类型,功能是存储应用数值。例如,通过一个名为mm的变量存储数值100,这样在应用时只需调用变量名mm,即可实现对其数值100的调用。

值类型的主要特点如下。

  • 值类型变量被保存在堆栈中。
  • 在访问值类型变量时,一般直接访问其实例名。
  • 每个值类型变量都有本身的副本,所以对一个值类型变量的操作不会影响到其他变量。
  • 在为值类型变量赋值时,赋值的是变量的值,而不是变量的地址。
  • 值类型变量的值不能是null。
  • 值类型是从System.ValueType类中继承的,包括结构、枚举和大多数的基本类型。具体说明如下。
  • 结构类型:功能是声名常量、字段、方法和属性等。
  • 枚举类型:是具有命名常量的独特类型,每个枚举类型都有一个基础的类型,是通过枚举来声名的。

除了值类型和引用类型外,在C#中通常用基本类型来表示常用的数据类型。基本类型是编译器直接支持的类型。基本类型的命名都使用关键字,它是构造其他类型的基础。其中值类型的基本类型通常被称为简单类型,例如下面的代码声名了int类型的变量。

int mm=123;

下面将详细介绍常用的基本类型。

  • 整型

在C#中定义了8种整型,具体说明如表3-2所示。

表3-2 C#整型信息

类   型

允许值的范围

sbyte

−128~127的整数

byte

0~255的整数

short

−32768~32767的整数

ushort

0~65535的整数

int

−2147483648~2147483647的整数

uint

0~4294967295的整数

long

−9223372036854775808~−2147483647的整数

ulong

0~18446744073709551615的整数

图像说明文字

注意:某变量前的字符“u”表示不能在此变量中存储负值。

  • 浮点型

浮点型包括float和double两种,具体说明如表3-3所示。

表3-3 C#浮点型信息

类   型

允许值的范围

float

IEEE 32位浮点数,精度是7位,取值范围为1.5×10−45~3.4×1038

double

IEEE 64-bit浮点数,精度是15到16位,取值范围为50×10−324~1.7×10308

  • 布尔型

布尔型有两个取值,分别是true和false,即代表“是”和“否”的含义。

  • 字符型

字符型的取值和Unicode的字符集相对应,通过字符型可以表示世界上所有语言的字符。字符型文本一般用一对单引号来标识,例如’MM’和’NN’。

使用字符型的转义字符可以表示一些特殊字符,常用的转义字符如表3-4所示。

表3-4 C#转义字符列表

转 义 字 符

描  述

\’

转义单引号

\’’

转义双引号

\\

转义反斜杠

\0

转义空字符

\a

转义感叹号

\b

转义退格

\f

转义换页

\n

转义新的行

\r

转义回车

\t

转义水平制表符

\v

转义垂直制表符

\x

后面接2个二进制数字,表示一个ASCII字符

\u

后面接4个二进制数字,表示一个ASCII字符

  • decimal型

decimal型是一种高精度的、128位的数据类型,常用于金融和货币计算项目。decimal型表示28或29个有效数字,取值范围为±1.0×10−28~7×1028

  • string型

string型用来表示字符串,常用于文本字符的代替,是字符型对象(char)的连续集合。string型的字符串值一旦被创建,就不能再修改,除非重新赋值。string型的变量赋值需要用双引号括起来,例如下面的代码。

string mm="管西京";

另外,string型的变量之间可以使用“+”进行连接。例如,下面的代码将输出“你好,人民邮电出版社!”。

string mm="你好";
string nn=",";
string zz="人民邮电出版社";
string ff="!";
string jieguo=mm+nn+zz+ff;
Console.WriteLine(jieguo);

图像说明文字

注意:使用“+”也可以连接不同数据类型的字符串。例如,下面的代码将输出“你好,123!”。

string mm="你好";
string nn=",";
int zz=123;
string ff="!";
string jieguo=mm+nn+zz+ff;
Console.WriteLine(jieguo);
  • object型

object型是C#的最基础类型,它可以表示任何类型的值。

在C#中不能给变量任意命名,命名时必须遵循如下两个原则。

  • 变量名的第一个字符必须是字母、下划线或@。
  • 第一个字符后的字符可以是字母、下划线或数字。

另外,还需要特别注意C#编译器中的关键字,例如关键字using。如果错误地使用了编译器中的关键字,则程序将会出现编译错误。

上一篇:3.3C#的基本语法

下一篇:3.5常量

相关教程

共有条评论 网友评论

验证码: 看不清楚?