什么是变量
在C#编程中,变量是用于存储数据的基本单元。你可以把变量想象成一个容器,里面可以存放不同类型的数据,如数字、文本、布尔值等。每个变量都有:
- 一个名称(标识符)
- 一个数据类型
- 一个值
声明变量
在C#中声明变量的基本语法是:
数据类型 变量名;
例如:
int age; // 声明一个整型变量age
string name; // 声明一个字符串变量name
也可以在声明时直接赋值:
int age = 25; // 声明并初始化
string name = "张三";
C#的基本数据类型
C#提供了多种内置数据类型,主要分为以下几类:
1. 整型
用于存储整数:
byte
:0到255(8位无符号)sbyte
:-128到127(8位有符号)short
:-32,768到32,767(16位有符号)ushort
:0到65,535(16位无符号)int
:-2,147,483,648到2,147,483,647(32位有符号)uint
:0到4,294,967,295(32位无符号)long
:-9,223,372,036,854,775,808到9,223,372,036,854,775,807(64位有符号)ulong
:0到18,446,744,073,709,551,615(64位无符号)
2. 浮点型
用于存储带小数点的数字:
float
:约±1.5×10⁻⁴⁵到±3.4×10³⁸(7位精度)double
:约±5.0×10⁻³²⁴到±1.7×10³⁰⁸(15-16位精度)decimal
:约±1.0×10⁻²⁸到±7.9×10²⁸(28-29位精度),适用于财务计算
3. 布尔型
bool
:true或false
4. 字符型
char
:单个Unicode字符(16位)
5. 字符串
string
:Unicode字符序列
变量命名规则
在C#中命名变量需要遵循以下规则:
- 必须以字母或下划线(_)开头
- 后续字符可以是字母、数字或下划线
- 不能使用C#关键字(如int、class等)作为变量名
- 区分大小写
- 推荐使用驼峰命名法(如
studentName
)
类型推断(var关键字)
C#提供了var
关键字,允许编译器根据初始值推断变量类型:
var age = 25; // 编译器推断为int
var name = "李四"; // 编译器推断为string
var price = 9.99m; // 编译器推断为decimal
常量(const)
使用const
关键字声明不可更改的常量:
const double PI = 3.14159;
const int DaysInWeek = 7;
类型转换
C#中的类型转换分为:
- 隐式转换(自动):从小类型到大类型
int i = 10;
long l = i; // 自动转换
- 显式转换(强制):从大类型到小类型
double d = 9.78;
int i = (int)d; // 强制转换,结果为9
- 使用Convert类
string s = "123";
int i = Convert.ToInt32(s);
- Parse和TryParse方法
string s = "123";
int i = int.Parse(s);
// 更安全的TryParse
if(int.TryParse(s, out int result))
{
// 转换成功
}
示例代码
using System;
class Program
{
static void Main()
{
// 变量声明与初始化
string studentName = "王五";
int age = 20;
double gpa = 3.75;
bool isGraduated = false;
// 输出变量值
Console.WriteLine($"学生姓名: {studentName}");
Console.WriteLine($"年龄: {age}");
Console.WriteLine($"平均成绩: {gpa}");
Console.WriteLine($"是否毕业: {isGraduated}");
// 类型转换示例
string input = "1234";
if(int.TryParse(input, out int number))
{
Console.WriteLine($"转换后的数字: {number}");
}
}
}
理解C#的变量和数据类型是学习这门语言的基础,掌握这些概念将为你后续学习更复杂的编程概念打下坚实的基础。