C#(基本语法)

数据类型

C#是一种强类型语言,变量必须声明类型。基本数据类型包括整型(int、long)、浮点型(float、double)、布尔型(bool)、字符型(char)和字符串型(string)。引用类型包括类、接口、数组等。

csharp 复制代码
int age = 25;
double price = 19.99;
bool isActive = true;
char grade = 'A';
string name = "John";

变量与常量

变量用于存储数据,使用前需声明类型。常量使用const关键字定义,初始化后不可更改。

csharp 复制代码
int counter = 10;
const double PI = 3.14159;

运算符

C#支持算术运算符(+、-、*、/)、比较运算符(==、!=、>、<)、逻辑运算符(&&、||、!)和赋值运算符(=、+=、-=)。

csharp 复制代码
int sum = 10 + 5;
bool isEqual = (sum == 15);
bool result = (true && false);

控制流语句

条件语句包括if-elseswitch,循环语句包括forwhiledo-while

csharp 复制代码
if (age >= 18) 
{
    Console.WriteLine("Adult");
}

for (int i = 0; i < 5; i++) 
{
    Console.WriteLine(i);
}

while (counter > 0) 
{
    counter--;
}

方法

方法是包含一系列语句的代码块,通过return返回值(无返回值用void)。参数可传递值或引用(refout)。

csharp 复制代码
int Add(int a, int b) 
{
    return a + b;
}

void PrintMessage(string message) 
{
    Console.WriteLine(message);
}

类和对象

类是面向对象的基础,包含字段、属性、方法和构造函数。对象是类的实例。

csharp 复制代码
class Person 
{
    public string Name { get; set; }
    public int Age { get; set; }

    public Person(string name, int age) 
    {
        Name = name;
        Age = age;
    }

    public void Introduce() 
    {
        Console.WriteLine($"Name: {Name}, Age: {Age}");
    }
}

Person person = new Person("Alice", 30);
person.Introduce();

异常处理

使用try-catch-finally块处理运行时错误,确保程序健壮性。

csharp 复制代码
try 
{
    int result = 10 / int.Parse("0");
}
catch (DivideByZeroException ex) 
{
    Console.WriteLine("Cannot divide by zero.");
}
finally 
{
    Console.WriteLine("Cleanup code here.");
}

集合类型

常见集合包括数组(Array)、列表(List)、字典(Dictionary)等,用于管理数据组。

csharp 复制代码
int[] numbers = { 1, 2, 3 };
List<string> names = new List<string> { "Alice", "Bob" };
Dictionary<int, string> employees = new Dictionary<int, string>();

命名空间

命名空间用于组织代码,避免命名冲突。通过using指令引入。

csharp 复制代码
using System;
namespace MyApp 
{
    class Program { ... }
}
相关推荐
工程师0074 小时前
C# 值类型 / 引用类型 内存布局(栈、堆、托管堆)
c#·值类型与引用类型
chao1898447 小时前
完整MES系统实现 (C# 客户端服务器)
服务器·windows·c#
月昤昽7 小时前
autocad二次开发 2.旋转
c#·autocad·autocad二次开发
rockey6278 小时前
基于AScript的python3脚本语言发布啦!
python·c#·.net·script·python3·eval·expression·function·动态脚本
工程师0078 小时前
C# 字符串不可变性 + 字符串驻留池原理
c#·字符串拘留池
唐青枫13 小时前
内存为什么越来越高?C#.NET GC 详解:分代回收、LOH、终结器与性能优化实战
c#·.net
xiaohe0714 小时前
C#数据库操作系列---SqlSugar完结篇
网络·数据库·c#
yngsqq1 天前
平面图环 内轮廓
c#
rockey6271 天前
AScript之eval函数详解
c#·.net·script·eval·expression·动态脚本
He少年1 天前
【AI 辅助案例分享】
人工智能·c#·编辑器·ai编程