C# 学习笔记

1. C# 简介

C# 是一种现代、面向对象的编程语言,由 Microsoft 开发。它用于构建多种应用程序,例如桌面应用程序、Web 应用程序和游戏开发。

例如,可以使用 C# 开发一个简单的控制台应用程序来输出一段文本:

Console.WriteLine("Hello, World!");

2. 变量与常量

C# 支持多种数据类型,可以使用 intdoublestring 等关键字来声明变量。

示例:

int number = 10;
const double pi = 3.14159;

3. 数据类型

C# 中有多种数据类型:

示例:

int age = 30;
string name = "Alice";
double salary = 1234.56;

4. 条件语句

C# 支持 ifelse ifelse 语句来实现条件逻辑判断。

示例:

int score = 85;
if (score >= 90) {
    Console.WriteLine("A");
} else if (score >= 80) {
    Console.WriteLine("B");
} else {
    Console.WriteLine("C");
}

5. 循环语句

C# 支持多种循环结构,例如 forwhileforeach

示例:

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

6. 函数

C# 中可以定义方法来实现代码复用,方法可以有返回值或没有返回值。

示例:

static int Add(int a, int b) {
    return a + b;
}

7. 类与对象

C# 是一种面向对象的编程语言,支持类和对象的概念。类是对象的模板。

示例:

class Person {
    public string Name;
    public int Age;
}

8. 委托与事件

C# 支持委托(delegate)和事件(event),可以用于实现事件驱动的编程模型。

示例:

public delegate void Notify(); // 声明委托
public class ProcessBusinessLogic {
    public event Notify ProcessCompleted; // 声明事件
    public void StartProcess() {
        // 处理逻辑
        ProcessCompleted?.Invoke();
    }
}

9. 泛型

泛型使程序更加灵活和类型安全,允许在类、接口和方法中使用类型参数。

示例:

public class GenericList {
    private T[] items = new T[10];
    public void AddItem(T item) { /* 添加逻辑 */ }
}

10. LINQ 查询

LINQ(语言集成查询)提供了一种查询集合的简便方法,适用于数组、列表和数据库等。

示例:

int[] numbers = { 1, 2, 3, 4, 5 };
var evenNumbers = from n in numbers where n % 2 == 0 select n;

11. 异步编程

C# 使用 asyncawait 关键字来实现异步编程,这使得代码更具可读性和响应性。

示例:

public async Task FetchDataAsync() {
    await Task.Delay(1000); // 模拟延迟
    Console.WriteLine("数据获取完成");
}