C# (.NET) 标准库:功能全面概述

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

C# (.NET) 标准库:全面概述



.NET 标准库(基类库,BCL)是 .NET 平台中包含的一组基础类、接口和值类型。它为 C# 开发者提供了现成的组件来解决常见任务:从集合和文件操作到网络通信和异步编程。在本文中,我们将详细解析每个 C# 开发者都应掌握的关键命名空间和类。



1. System 命名空间 — 一切的基础

根命名空间 System 包含基础类型:

  • 基本数据类型:Object、String、Int32、Double、Boolean 等。
  • 实用工具:Console(输入/输出)、Math(数学函数)、Random(随机数生成)。
  • 错误处理:Exception 及其派生类(ArgumentException、NullReferenceException 等)。

使用示例:

using System;

class Program{ static void Main() { Console.WriteLine("你好,.NET!"); double result = Math.Sqrt(144); Console.WriteLine($"144 的平方根:{result}"); }}


2. System.Collections — 集合操作

用于存储和管理对象组的命名空间。分为泛型集合和非泛型集合。

主要类:

  • List<T> — 动态数组,支持按索引快速访问。
  • Dictionary<TKey, TValue> — 关联数组(哈希表)。
  • Queue<T> — 队列(先进先出)。
  • Stack<T> — 栈(后进先出)。
  • HashSet<T> — 唯一元素集合。

示例:

using System.Collections.Generic;

var numbers = new List<int> { 10, 20, 30 };numbers.Add(40);

var lookup = new Dictionary<string, int>{ ["一"] = 1, ["二"] = 2};

Console.WriteLine(lookup["二"]); // 2


3. System.Linq — 语言集成查询

LINQ 允许对集合、数据库和 XML 执行类似 SQL 的查询。主要扩展方法:

  • Where() — 过滤。
  • Select() — 投影。
  • OrderBy() — 排序。
  • GroupBy() — 分组。
  • Aggregate() — 聚合函数(Sum、Count、Average)。

示例:

using System.Linq;

int[] scores = { 85, 92, 78, 95, 88 };var highScores = scores .Where(s => s >= 90) .OrderByDescending(s => s) .ToList();

Console.WriteLine(string.Join(", ", highScores)); // 95, 92


4. System.IO — 文件和流操作

用于数据输入/输出的命名空间。关键类:

  • File / FileInfo — 创建、读取、写入文件。
  • Directory / DirectoryInfo — 目录操作。
  • StreamReader / StreamWriter — 文本流读取/写入。
  • FileStream — 底层文件操作。

写入和读取示例:

using System.IO;

string path = "example.txt";File.WriteAllText(path, "你好,.NET!");

string content = File.ReadAllText(path);Console.WriteLine(content); // 你好,.NET!


5. System.Threading.Tasks — 异步编程

通过 async 和 await 关键字的现代异步方法。主要类

推荐