首页 > 代码库 > C#基础-变量与常量(1)

C#基础-变量与常量(1)

一、变量的基本概念:

      变量本事是用来存储特定类型的数据,可以随时改变变量中所存储的数据值。变量具有名称、类型和值。变量的值是可以发生变化的,使用变量之前必须先声明变量,即指定变量的类型和名称。

   1、变量类型:

      变量类型根据其定义分为:一种是值类型,另一种是引用类型。

二、变量类型;

1、值类型特征:

            ① 值类型变量都存储在堆栈中;

            ② 访问值类型变量时,一般都是直接访问其实例;

            ③ 每个值类型变量都有自己的数据副本,因此对一个值类型变量操作不会影响其他变量;

            ④ 复制值类型变量时,复制的是变量的值,而不是变量的地址;

            ⑤ 值类型变量不能为NULL,必须具有一个确定的值

  值类型是从System.ValueType 类继承而来的类型。

   2、整数类型:整数类型代表没有小数点的整数数值

类型

说明

范围

Sbyte

8位有符号整数

取值范围在128~127之间

Short

16位有符号整数

取值范围在-32,768~32,767之间

Int

32位有符号整数

取值范围在-2,147,483,648~ 2,147,483,647之间

Long

64位有符号整数

取值范围在-9,223,372,036,854,775,808~ 9,223,372,036,854,775,807之间

Byte

8位无符号整数

取值范围在0~255之间

Ushort

16位无符号整数

取值范围在0~65,535之间

Uint

32位无符号整数

取值范围在 0 ~ 4,294,967,295之间

Ulong

64位无符号整数

取值范围在0 ~ 18,446,744,073,709,551,615之间

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  创建一个控制台应用程序,声明变量int类型的变量ls并初始化为927,一个为byte类型的变量shj并初始化为255,输出

1 statci void Main (string [] arge)2 {3         int ls=927;//声明一个int类型的变量ls4         byte shj =255;//声明一个byte类型的变量shj5         Console.WriteLine("ls={0},shj={1}"+ls,shj);//输出6         Console.ReadLine();7 }    

  如果将byte类型的变量shj赋值266出现错误,byte值范围0~255

3、浮点类型:浮点类型变量主要用于处理含有小数的数值数据,浮点型主要包含floatdouble 它们的差别在于取值范围和精度 

类型

说明

范围

float

精确到7位数

 取值范围在 1.5x10^-45~ 3.4x10^38之间

double

精确到15~16位数

 取值范围在 5.0x10^-324 ~ 1.7x10^308之间

 

 

 

 

 

  如果不做任何设置,包含小数点的数值都被认为double类型,如果没有指明的情况下,这个数值是double类型。如果要将数值一float类型来处理,就要强制转换使用fF将其指定float类型

1             double MyDou=927d;//使用d强制转换为double2             double mudou=112D;//使用D强制转换为double     

将数值数值类型强制指定为double类型,则需要使用Dd进行设置

1             double MyDou=927d;//使用d强制转换为double2             double mudou=112D;//使用D强制转换为double        

3、布尔型:布尔类型主要用来表示true/false值,一个布尔类型的变量,其值只能是true或者false,不能将其他的值指定给布尔类型变量,布尔类型变量不能与其他类型进行转换。

  将927赋值给布尔类型变量x

1             Bool x=927;     

  这样赋值是错误的,常量值927无法转换为bool

三、引用类型:

 1 引用类型是构建C#应用程序的主要对象类型数据,预先定义的对象类型以new创建对象实例,并存储在堆栈中。
   2、引用类型特征:

                    ① 必须在托管堆中为引用类型变量分配内存;

                    ② 必须需new关键字来创建引用类型变量;

                    ③ 在托管堆中分配的每个对象都有与之相关联的附加成员,这些成员必须被初始化;

                    ④ 引用类型变量室友垃圾回收机制来管理的;

                    ⑤ 多个引用变量可以引用同一对象,这种情况下,对一个变量的操作会影响另一个变量所引用的同一对象

                    ⑥ 引用类型被赋值前的值都是NULL

    所有被称为的都是引用类型,主要包括类、接口、数组和委托。

        创建一个控制台应用程序,在其中创建一个C类,在该类中建立一个字段Value,并初始化为0.然后通过其他位置通过new创建该类的引用类型变量,最后输出。

 1 class Program 2     { 3         class C //创建一个C类 4         { 5             public int Value = http://www.mamicode.com/0;//声明一个公共int类型的变量Value 6         } 7         static void Main(string[] args) 8         { 9             int v1 = 0;//声明一个int类型的变量v1,并初始化为010             int v2 = 1;//声明一个int类型的变量v2,并将v1赋值个v211             v2 = 927;//重新将变量V2赋值为92712             C r1 = new C();//使用new关键字创建引用对象13             C r2 = r1;//使r1=r214             r2.Value = http://www.mamicode.com/112;//设置r2的value值15             Console.WriteLine("Values;{0},{1}", v1, v2);//设置输出v1和v2的变量16             Console.WriteLine("refs;{0},{1}", r1.Value, r2.Value);//输出引用类型对象的value值17             Console.ReadLine();18         }19     }

 

 

 

C#基础-变量与常量(1)