一.常量:关键字const
1.定义:不可改变的量,相对于变量来说,也可以说成不可改变的变量
2.语法: const 类型 常量名=常量值
3.注意:常量只能在初始化时赋值,其他情况下不允许赋值,
4.定义常量优点:a.防止在后续程序中被修改 b.可以重复使用
5.例子:
const double P=3.14;
二.枚举:关键字 enum
1.定义:
我们可以定义变量中的类型,然后对变量值进行一定的限制,当用户对我们这种类型进行赋值时,只能赋咱们限定好的值。我们可以重新定义一种类型,并且在定义这种类型时,我们要指定这个类型的所有值
2.语法:
enum 自己起的类型名称{类型值1,类型值2,......,类型值n}
3.注意:
a.定义枚举时,枚举的值不能是int类型
b.枚举类型的变量都可以强制转化成int类型,并且都可以输出它的值
c.定义枚举类型时,枚举类型的值都有一个默认编号,从0开始
c.枚举在方法、类、命名空间中都可以定义,但是一般我们会把枚举定义和类定义在同一个级别,在同一个命名空间下的所有类都可以使用该枚举。
d.在枚举值时不需要加双引号
4.优点:
a.限制用户不能随意赋值,只能赋在定义枚举时列举的值中选择
b.不需要死记每个值是什么,只需要选择相应的值就可以了
5.如何把一个字符串转化成枚举类型:这是一个公式可以记住
(自己定义的枚举类型)Enum.Parse(typeof(自己定义的枚举类型),"待转化的字符串")
6.例子:
namespace enumTe
{
/// <summary>
/// 1.定义了一个枚举类型,
/// 2.一般枚举类型都和类放在同一个级别,这个只要是这个命名空间下的类都可以使用该枚举
/// 当然枚举也可以定义在方法和类中,但是这样枚举的作用范围只能是方法内或是特定的定义枚举的类中
/// 3.在声明枚举时都有一个默认的序号,该后从0开始,声明值时不需要加双引号
/// </summary>
enum subject
{
语文,
数学,
化学,
物理,
计算机,
生物,
地理,
英语
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine("输入学科名称可以查询学习该学科的人数!");
subject sb;
try
{
string str=Console.ReadLine();
sb = (subject)Enum.Parse(typeof(subject), str);//将字符串强制转化为枚举类型,用的就是上面提到的公式
int people = 0;//声明学生个数变量
switch (sb)//一般枚举我们都有switch控制条件
{
case subject.地理:
people = 1;
break;
case subject.化学:
people = 2;
break;
case subject.计算机:
people = 3;
break;
case subject.生物:
people = 4;
break;
case subject.数学:
people = 5;
break;
case subject.物理:
people = 6;
break;
case subject.英语:
people = 7;
break;
case subject.语文:
people = 8;
break;
default:
people = 0;
break;
}
Console.WriteLine("您输入的学科名称为:" + sb + ",学习此课程的人数为" + people);//输出
Console.ReadKey();//这句话在这里的含义就是为了看清楚输出的是什么
}
catch (Exception ex)
{
Console.WriteLine("您输入的学科有误,请重新输入!");
}
}
}
}