C# 变量与常量
一、变量的基本概念
变量本身是被用来存储特定类型的数据,根据需要可随时更改变量中存储的数据值。变量具有名称、类型和值。变量名是变量在程序源代码中的标识。变量类型确定它所代表的内存的大小和类型。变量值是指它所代表的内存块中的数据。
举例假设:内存中的一块区域,这个区域名 = 变量名。而这块区域的大小的那种类型的位置 = 变量类型。而此区域内存储的程序里各种各样的数据 = 变量值。
在程序执行的过程中,变量的值可以改变。但是,使用变量之前必须先声明变量,即指定变量的类型和名称,变量值可以暂时设为0或null(0表示有数据,这数据就是数字 0;而null表示没数据)。
二、变量的声明及赋值
变量使用之前必须进行*声明*并*赋值*。
变量的使用是程序设计中一个十分重要的环节,(好的变量有利于后期的代码维护)。为什么要定义变量?我们在开始,要告诉编译器这个变量是属于哪一种数据类型,编译器才知道需要配置多少控件给它,以及它能存放什么数据。在程序运行的过程中,空间内的值是变化的,而这个内存空间就被称为变量,也就是你设的变量名。变量的声明很重要,未经声明的变量本身并不合法,因此不能在程序中使用。
在C#中,声明一个变量是由一个类型和跟在后面的一个或多个变量名组成的,多个变量之间用逗号分开,声明变量以分号结束。
2.1变量的声明
基本语法:
例:
int num;//声明一个整形变量
string str1,str2,str3;//同时声明三个字符型变量
int a = 967;//初始化整型变量a
string x = "支付宝",y = "微信支付",z = " 银联";//初始化字符串型变量x、y和z
2.2变量的初始化 = 变量的赋值
在c#中,使用赋值运算符“ = ”(等号)来给变量赋值,将等号右边的值赋给左边的变量。
例:
int sum;//声明一个变量
sum = 2019;//使用赋值运算符“=”给变量赋值
2.3变量的作用域
由于变量被定义出来后只是暂时在内存中,等到程序执行到某一点后,该变量会被释放掉,也就是说变量有它的生命周期。因此,变量的作用域是指程序代码能够访问该变量的区域,若超出该区域,则在编译时会出现错误。在程序中,一般会根据变量的“有效范围”,将变量分为“成员变量”和“局部变量”。
1.成员变量
在类体中定义的变量被称为成员变量,成员变量在整个类中都有效。类的成员变量又可分为两种,即静态变量和实例变量。
例:
class Test
{
int x = 45;//实例变量
static int y = 90;//静态变量(也称类变量)
//在成员变量的类型前面加上关键字static是静态变量,除了能在定义它的类内存取,还能直接“ 类名.静态变量”的方式在其他类内使用。
}
2.局部变量
当类的方法体中定义的变量(方法内部定义,“ { ”与“ } ”之间的代码中声明的变量)称为局部变量。局部变量只在当前代码块中有效。
在类的方法中声明的变量,包括方法的参数,都属于局部变量。局部变量只有在当前定义的方法内有效,不能用于类的其他方法中,当该方法的调用结束后,则会释放方法中局部变量占用的内存空间,局部变量也将会销毁。
例:
static void Main(string[] args)
{
//调用for语句循环输出数字
for(int i = 0;i <=20;i++)//for循环内的局部变量i
{
Console.WriteLine(i.ToString());//输出2~20的数字
}
Console.ReadLine();
}
三、数据类型
变量的类型和初始化
变量的类型就是数据的类型,基本的数据类型有13种,
基本数据类型:byte,sbyte,short,ushort,int,uint,long,ulong,float,double,decimal,bool,single,
三、变量的特点
1)变量可以被多次赋值,其输出结果是输出前的最后一次赋值。
2)变量要先赋值后使用,否则会报错。(局部变量)
3)在同一个代码块{…}中,不能有相同的变量出现。
4)具体值的类型 = 变量的类型。
附件:变量名(做好程序员的基本修养)
能做到“见名知意”
1)变量名只能包含:英文字母大小写、数字下划线()、@等字符。
2)变量名不能以数字开头,可以用英文字母大小写、数字下划线()、@等字符开头。
3)关键字或保留关键字不能做变量名。(会报错,在vs中,关键字为蓝色字体)
4)变量名以一个英文单词命名,这个单词可用小写;以多个英文单词命名,第一个单词首字母可以大写,也可以不大写,但从第二个单词开始,首字母大写。(这种方式称为驼峰式:camel)
有关变量名的命名,我会在《命名----做程序员的基本要求》中详细讲解,不可忽略。