版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。
变量是用来存放某个值的数据,它可以表示一个数字、一个字符串、一个结构、一个类等。变量包含名称、类型和值。在代码中,变量的值是可以改变的。
2.3.1 声明一个变量
通常情况下变量应先声明再使用。
在C#中常常采用以下语法声明变量:
变量类型 变量名称;
例如:
string strName;
这里声明了一个string(字符串类型)的变量strName。
VB.Net通常使用:
Dim变量名称As变量类型
来声明一个变量。
相对于VB.Net,C#的声明更简略。
多个同类型变量的定义可以使用以下语句:
变量类型 变量名称1, 变量名称2;
变量之间使用,(英文逗号)隔开,例如:
string strName, strGender;
对于上述进行了类型声明的变量,一般称为显式类型变量,通过var关键字来声明变量,也可以不指明变量类型,例如:
var strName="Name";
编译器会为从=运算符右侧表达式推断出变量的类型。
相对而言,Vb.Net使用
Dim strName
赋予strName一个默认的变量类型:Object,当代码运行时,再根据实际赋予相应的类型。
注意:使用var来声明变量一般称为隐式类型变量,必须在声明时初始化。
【例 2.5】【项目:code2-005】使用未声明的代码。
static void Main(string[] args)
{
var strName= "XiaoMing";
Console.WriteLine(strName);
Console.ReadKey();
}
如果使用var声明的时候没有赋初始值,那么编辑器会提示错误。
图2-5 编辑器将未初始化的声明标注为错误
为了让阅读代码的人更清楚地理解变量,应该声明变量后再使用。
2.3.2 变量的赋值
通常变量声明后通过=(等于号)来赋值,例如:
strName=" XiaoMing ";
这里将“XiaoMing”这个字符串值赋给了strName,在以后的代码中出现的strName其实就是“XiaoMing”。注意:与VB.Net不同,C#里面=只能是赋值符号,不是判断相等的运算符,判断是否相等应该使用==(两个等号)。
那么也可以在声明变量的时候就赋予变量一个初始值,例如:
string strName= "XiaoMing";
注意:可以多个同类型变量的声明的同时使用赋值,例如以下代码:
string strName, strGender = "XiaoMing";
但只赋值给最后一个变量。
2.3.3 变量名称规则
变量名称通常由数字、字母和下划线组成且第一个字符不能为数字,不能使用系统的关键字(如:for、string等等)作为变量名称。不过请放心的是,如果不小心使用了关键字,VS会提醒的。
网上对于变量的命名有很多看法,通常情况下使用
简化的类型名称+变量的含义
例如上面的strName,str是类型String的简化,相应的int是Integer的简化等;Name是汉字姓名的英语单词。Str+Name合在一起表示这个变量定义的是某个人的姓名,同时也反映了这个变量是一个字符串类型。
通常类型名称小写,变量含义的单词首字母大写,如果变量含义由多个单词组成,那么每个单词的首字母都大写。例如:
string strNameOfSomeone;
由于C# 编辑器区分变量大小写,strName 和 strname、STRNAME是不相同的(个人吐槽:这点没有VB.Net好),这点需要注意。
在实际编程中,如果不是团队开发,各人可以按照个人的习惯来命名变量。比如英文单词不熟悉的可以声明strXingming、strXM,甚至 Xingming,或者汉字的:str姓名、姓名……都可以。在团队开发时,建议采用统一的命名方式,便于阅读,不建议使用诸如:strName1、strName2这样不便于理解的变量名称。
简单的循环可以使用i、j、k等单字母作为变量名称。
需要说明的是,为了讲解方便和便于理解,在本书中有时候不一定会按照以上方法给变量命名,特别是窗体、控件、组件的名称,会使用VS提供的默认名称。
学习更多vb.net知识,请参看vb.net 教程 目录
学习更多C#知识,请参看C#教程 目录