C#变量核心知识
·
变量声明与初始化
在C#中,变量需明确指定数据类型。声明语法为:数据类型 变量名;,初始化可通过赋值完成:
int age; // 声明
age = 25; // 初始化
string name = "Alice"; // 声明并初始化
使用var可隐式推断类型(编译时确定):
var score = 95.5; // 自动推断为double
数据类型分类
值类型:直接存储数据(如int, double, struct)。
引用类型:存储内存地址(如string, class, array)。
特殊类型:
dynamic:运行时确定类型。nullable:值类型允许为null(如int? nullableInt = null;)。
作用域与生命周期
- 局部变量:在方法或代码块内声明,仅在该范围内有效。
- 成员变量:在类中声明,作用域为整个类(需实例化访问)。
- 静态变量:用
static修饰,生命周期与程序一致。
class Example {
static int staticVar = 10; // 静态变量
int memberVar = 20; // 成员变量
void Method() {
int localVar = 30; // 局部变量
}
}
常量与只读变量
const:编译时常量,必须声明时赋值。readonly:运行时常量,可在构造函数中赋值。
const double PI = 3.14;
readonly DateTime CreatedDate;
public Example() {
CreatedDate = DateTime.Now; // 允许在构造函数赋值
}
类型转换
隐式转换:自动进行(如int转double)。
显式转换:需强制指定(可能丢失精度):
double d = 3.14;
int i = (int)d; // 显式转换,结果为3
使用Convert类或Parse/TryParse方法处理复杂转换:
string str = "123";
int num = int.Parse(str); // 或 Convert.ToInt32(str)
最佳实践
- 避免隐式类型
var导致代码可读性降低。 - 使用
TryParse替代Parse防止异常。 - 优先选择
readonly而非const应对运行时变化需求。
通过理解以上核心概念,可高效管理C#变量并减少常见错误。
更多推荐
所有评论(0)