【回顾】C#从入门到精通第三章笔记
C#从入门到精通(第五版)第三章笔记

变量与常量
1.变量的基本概念
变量本身被用来存储特定类型的数据,可以根据需要随时改变变量中所存储的数据值。
变量具有:名称、类型和值。
2.变量的声明和赋值
两种声明和赋值方式:
第一种: 数据类型 变量名 = 数值;
比如:int number = 1000;
第二种:
数据类型 变量名;
变量名 = 数值;
比如:
int money;
money = 1000 ;
3.C#语言中变量命名规则
①.变量名只能由数字、字母和下划线组成。
②.变量名的第一个符号只能是字母和下划线,不能是数字。
③.不能使用关键字作为变量名。
④.一旦在一个语句块中定义了一个变量名,那么在变量的作用域内都不能再定义同名的变量。
4.变量的作用域
变量的作用域指程序代码能够访问该变量的区域,若超出该区域,则编译时会出现错误。
在程序中,一般会根据变量的“有效范围”将变量分为“成员变量”和“局部变量”。
成员变量:在整个类中都有效。成员变量又分为静态变量和实例变量。
比如:
class Test
{
int x=45; //实例变量
static int x=90; //静态变量
}
静态变量:(有效范围可以跨类)
局部变量:在"{"和"}"之间的代码声明的变量叫局部变量。
5.变量的数据类型
变量的数据类型按定义可以分为两种:值类型和引用类型

值类型的变量本身直接存储数据。
引用类型则是存储实际数据的引用。
值类型:
特点:值类型直接存储值。(赋值时不能影响另一个变量)
(1).整数类型

(2).浮点类型

(3).布尔类型

值类型之整数类型
引用类型:(包括类,接口,数组和委托)
特点:存储对值的引用。(赋值时会影响变量)
例如:
student1.Age = 18(Age=18)
student2 = student1(Age=18)
student2.Age = 20(Age=20)
比如:
namespace Test02
{
class Program
{
class C //创建一个类C
{
public int Value; //声明一个公共int类型的变量Value
}
static void Main(string[] args)
{
int v1 = 0; //声明一个int类型的变量v1,并初始化为0
int v2 = v1; //声明一个int类型的变量v2,并将v1赋值给v2
v2 = 927; //重新将变量v2赋值为927
C r1 = new C(); //使用new关键字创建引用对象
C r2 = r1; //使r1等于r2
r2.Value = 112; //设置变量r2的Value值
Console.WriteLine("Values:{0},{1}", v1, v2); //输出变量v1和v2
Console.WriteLine("Refs:{0},{1}", r1.Value, r2.Value);//输出引用类型对象的Value值
Console.ReadLine();
}
}
}
6.预定义两类型:Object类型和String类型
object是所有的基类,也就是所有类的父类。
string类是用来表示字符串,代替c语言中字符数组来存储字符串的功能。
7.枚举类型:
格式:访问修饰符 enum 枚举名 {值1,值2… }
例如:
enum MyDate //使用enum创建枚举
{
Sun = 0, //设置枚举值名称Sun,枚举值为0
Mon = 1, //设置枚举值名称Mon,枚举值为1
Tue = 2, //设置枚举值名称Tue,枚举值为2
Wed = 3, //设置枚举值名称Wed,枚举值为3
Thu = 4, //设置枚举值名称Thu,枚举值为4
Fri = 5, //设置枚举值名称Fri,枚举值为5
Sat = 6 //设置枚举值名称Sat,枚举值为6
}
8.类型转换
(1).隐式类型转换
在某种条件下,系统自动完成类型转换(即隐式类型转换)「跟C语言的一样」
(2).显式类型转换
第一种.
(类型名)表达式
例如:
int b = (int)10.2;
double a = 10;
int c = (int)a;
第二种:
例如:
Convert.To类型名(表达式)
double a = 10;
int c = Convert.ToInt32(a);
第三种:
例如:
类型名.Parse(表达式)
double a = 10;
int c = Int.Parse(a.ToString());
9.常量
定义:不能被改变的量
关键字:const
第三章完!