我们之前说过,编写C#代码其实就是在使用一定的规则编写和计算机沟通的文本。所以,规则学会了之后,我们就需要利用这样的规则,将现实生活中的任务转化成与机器沟通的文本。
而我们转化任务的第一步,就是将现实生活的任务拆分,变成一个个的元子,然后组合成一个整体,送给计算机去执行。
比如,我们要执行一个计算任务,就需要将计算的数据提取出来,变成这个任务的元子,然后通过规则进行计算。
比如,我们要让计算机执行客服任务,就需要将计算机要显示给我们的话变成任务的元子,然后通过规则进行显示。
而计算机需要先将这些元子保存,而保存这些原子的容器,学名就叫做变量。
而我们的C#会将变量进行细化,比如说,保存数字的变量叫做数字变量,保存文本的变量叫做字符串变量。
1、变量的基础使用
变量的声明:变量格式 变量名;
比如我们要声明一个存储整数的变量:int a;
比如我们要声明一个存储字符的变量:string str;
变量的初始化:变量名=变量值;
比如我们要将声明的整数变量存储元数据1:a=1;
比如我们要将声明的字符串变量存储元数据Hello World:str="Hello World";
但是这时我们需要注意:我们通常使用和阅读的方式是从左向右的
比如1+1=2为1加上1等于2
但是在C#中一旦遇到了“=”号,使用方式为从右向左,所以
这里的a=1;意思是将1赋值给a
这里的str="Hello World";意思是将Hello World赋值给str
而类似这样的语句叫做赋值语句
而赋值语句之后,我们就可以使用这些变量
比如我们执行一个计算任务:将1+1计算,并将值输出
这里在计算机执行的时候,替换标签直接将后面a+a的计算结果替换了上来,而计算的时候,a+a代表着1+1
比如我们执行一个客服任务:客服说一句话:您好,我是您的计算机客服,很高兴为您服务
这里在计算机执行的时候,替换标签直接将str代表的“您好,我是您的计算机客服,很高兴为您服务”替换了上来。
而对a和str的使用,就是变量的调用
我们的a经过了变量的声明->初始化->调用过程
我们的str经过了变量的声明->初始化->调用过程
2、变量的方便使用
声明和初始化同时发生
但是,当我们代码编写的比较多的时候,会发现类似这样声明变量后直接初始化使用的代码
int a;
a =1;
很麻烦
于是就涉及到了可以声明并且同时初始化的代码
int a=1;
从而简化复杂的编写
但是要注意,这样的声明并同时初始化的语句比较适用于声明和初始化距离比较近的情况
同时声明多个相同类型变量
如果我们遇到需要同时声明多个相同类型变量的情况的时候我们可以这样:
int a,b,c;
a=1;
b=2;
c=3;
但是需要注意:这里是同时声明多个“相同类型”的变量
同时声明多个相同类型变量,并且在声明的同时给其中某个变量进行初始化
int a=1,b,c;
同时给几个变量初始化相同的值
int a;
int b;
int c;
a=b=c=1;
3、不能调用没有初始化的变量
好奇的粉丝也许会产生个疑问,如果我直接调用没有初始化的变量,会发生什么呢?
我们看看效果
这个是怎么回事?
不知道我们是否有印象,之前我们讲Console.WriteLine()时候做过一个例子,用替换标识符的时候,对应的替换标识符对应的替换内容不存在,之后就报错了。我们得出的结论是,不能使用不存在的内容。
这个例子异曲同工。
此时int a;是告诉计算机此处声明了一个变量a,用来存储整数的。但是里面并没有内容,而我们在调用a的时候,是需要使用其中存储的内容,而此时其中没有存储任何内容,便是我们之前所遇到的,使用了不存在的内容,当然就报错喽。
4、变量的重写
这里介绍变量的另一个状态就是重写,我们看看下面的代码
这里的代码的意思是:
声明变量a
a中存储1
a中存储2(此时是用2替换之前的1)
调用a
此时的替换便是重写
再深化一下
这个代码又是什么情况?
其实这里我们综合运用了之前学习的内容,变量的重写和赋值语句
这里的代码的意思是
声明变量a
a中存储1
而a=a+1;的意思是赋值语句,我们需要从右向左看,也就是先计算a+1的值,然后将值赋值给a,从而重写a的内容
最后调用a
5、常用的变量类型
我们说到,C#将我们的元数据进行了严格的分类,我们先列举几个常用的变量类型
int 整数类型:int a=1;
double 小数类型:double b=3.14;
decimal 金钱类型:decimal c=123.123m;
string 字符串类型:string s="你好"; 存储一连串的字符
char 字符类型:char a='a';只存储一个字符
bool 布尔类型:bool b=true; 只存储 true false 这两个值
领取专属 10元无门槛券
私享最新 技术干货