C#入门系列 (四) -- 常量和变量
一,常量
常量是固定值,程序执行期间不会改变。常量可以是任何基本数据类型,比如整数常量、浮点常量、字符常量或者字符串常量,还有枚举常量。
常量可以被当作常规的变量,只是它们的值在定义后不能被修改。
定义常量常量是使用 const 关键字来定义的 。定义一个常量的语法如下:
使用
修改常量值,编译时会报错:
![](https://static001.geekbang.org/infoq/84/84cf2cc9a11e9fa9af8a3eff27b666da.png)
动态常量:readonly
在运行时确定值,只能在声明时或构造函数中初始化,只能在类中定义。定义方法如下:
使用建议:在下面两种情况下:
取值永久不变(比如圆周率、一天包含的小时数、地球的半径等)。
对程序性能要求非常苛刻。
可以使用 const 常量,除此之外的其他情况都应该优先采用 readonly 常量。
二,变量
一个变量只不过是一个供程序操作的存储区的名字。在 C# 中,每个变量都有一个特定的类型,类型决定了变量的内存大小和布局。范围内的值可以存储在内存中,可以对变量进行一系列操作。
C#中规定变量必须“先定义后使用”。
变量的定义语法如下所示:
变量类型可以是 C#中支持的任何数据类型或 var,变量名的命名规则遵循 C#中标识符的命名规则。
一些有效的变量定义如下所示:
简单示例
变量值为与变量类型相同或能隐式转换为该类型的常量、已被定义并赋值的类型相同或能隐式转换为该类型的变量,或由它们作为操作数构成的表达式。
Var 关键字 C#3.0 之后支持使用 var 关键字来定义隐式类型变量,声明隐式类型变量时必须对变量进行初始化。隐式类型变量的定义示例如下:
可空类型可空类型可以表示基础类型的所有值和 null,定义可空类型
变量的语法如下:
变量类型可以是 C#类型系统中的简单类型、枚举类型和结构类型,但不能为引用类型。
示例:
使用可空类型变量时,C#提供了两种方法测试变量值是否为 null 以避免变量的错误引用。
版权声明: 本文为 InfoQ 作者【陈言必行】的原创文章。
原文链接:【http://xie.infoq.cn/article/b40e022a23875f96d0c9c53f4】。未经作者许可,禁止转载。
评论