### C#.NET 学习笔记知识点总结 #### 1. .NET Framework 组件 - **CLR (Common Language Runtime)**: 公共语言运行时,是.NET框架的核心组件之一,负责执行托管代码,提供垃圾回收、异常处理、安全性验证等功能。 - **CTS (Common Type System)**: 公共类型系统,规定了所有.NET程序都必须遵循的一组类型规则,确保不同语言编写的代码可以在.NET平台上互操作。 - **CLS (Common Language Specification)**: 公共语言规范,定义了一套所有.NET语言都应该支持的标准类型和编程构造,确保跨语言互操作性。 - **MSIL (Microsoft Intermediate Language)**: 微软中间语言,是一种平台独立的、面向对象的语言,所有.NET代码都会被编译成MSIL,然后在CLR中运行。 #### 2. 基本输入输出 - **ReadLine() vs Read()**: - `ReadLine()`: 用于从标准输入流中读取一整行文本,并返回该行作为字符串。如果到达文件末尾,则返回null。 - `Read()`: 从输入流中读取单个字符并返回其ASCII码值。读取到文件末尾时返回-1。 #### 3. 常量与只读变量 - **const vs readonly**: - `const`: 定义的是编译时常量,只能在声明时初始化,并且只能用于编译时已知的值。 - `readonly`: 定义的是运行时常量,可以在声明时初始化或在构造函数中初始化。适用于那些在整个程序运行过程中不会改变的值。 #### 4. 异常处理 - **catch (Exception ex)**: 用于捕获并处理运行时发生的异常。通过这种方式,可以显示异常信息,例如使用`MessageBox.Show(ex.Message);`。 - 注意:尽管这种方法可以捕获所有异常,但在实际开发中应针对特定类型的异常进行处理,以便更精确地定位问题所在。 #### 5. 字符串比较 - 使用`==`来比较两个字符串是否相等。`=`是赋值操作符。 #### 6. 条件语句与循环 - **条件语句**: 包括`if`, `else if`, `else`等。 - **循环语句**: 包括`for`, `while`, `do...while`等。 - **跳转语句**: 包括`break`, `continue`, `goto`等。 - **三目运算符**: `条件 ? 表达式1 : 表达式2`。根据条件的不同结果选择不同的表达式执行。 #### 7. 数组与排序 - **冒泡排序**: ```csharp int[] array = new int[]{12, 23, 13, 45, 35, 56, 44, 21, 45, 77, 39, 23}; for (int i = 0; i < array.Length - 1; i++) { for (int j = 0; j < array.Length - 1 - i; j++) { if (array[j] > array[j + 1]) { int temp = array[j]; array[j] = array[j + 1]; array[j + 1] = temp; } } } ``` - **内置排序**: 可以使用`Array.Sort(array)`来进行排序。 - **数组反转**: 使用`Array.Reverse(array)`可以反转数组元素顺序。 #### 8. 字符串与StringBuilder - **String**: - 不可变类型。 - 每次对字符串进行操作时都会创建新的实例,这在大量字符串操作时会导致性能下降。 - **StringBuilder**: - 可变类型。 - 适合进行大量的字符串拼接操作,因为它不会每次操作都创建新对象,而是复用内存。 - 在字符串操作频繁的情况下推荐使用`StringBuilder`以提高效率。 #### 9. 集合与泛型 - **集合**: 如`ArrayList`,可以动态添加和删除元素。 - **泛型**: 提供类型安全性和性能优势,如`List<T>`。 - **ArrayList**: - 可以存储任意类型的对象,但需要进行装箱和拆箱操作,可能导致性能下降。 - **List<T>**: - 泛型集合,类型参数化,无需装箱拆箱,提高了性能和类型安全性。 - **Dictionary<TKey, TValue>**: - 键值对集合,提供高效的数据查找方式。 #### 10. 哈希表遍历 - 对于哈希表的遍历,可以使用`foreach`循环,如: ```csharp foreach (object item in ht.Keys) { Console.WriteLine("keys={0}\tvalues={1}", item, ht[item]); } ``` #### 11. 泛型集合遍历 - 对于泛型集合的遍历,可以使用`foreach`循环,如: ```csharp foreach (KeyValuePair<string, DateTime> item in dic) { Console.WriteLine("keys={0}, values={1}", item.Key, item.Value); } ``` 以上是对C#.NET中一些基本知识点的总结,希望对初学者有所帮助。在实际开发中,还需要不断实践和学习更多的高级特性。



























剩余28页未读,继续阅读


- 粉丝: 0
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 计算机图像处理的相关技术.docx
- asp电子商务网站建设(专科).doc
- 大数据时代背景下企业财务共享构建研究.docx
- 软件质量数据分析报告.doc
- JSP留言板课程设计方案.doc
- 河北工大企业信息化第4章.ppt
- 使用C语言操作事件管理器的寄存器分解.ppt
- 操作系统原理知识点总结.doc
- 项目管理师项目启动.ppt
- 使用ProE与CAM软件模具设计方案与加工.doc
- 电气工程与自动化控制中的智能化技术应用初探.docx
- 加强计算机教学管理的方法探究.docx
- 基于PLC施工场地升降机控制系统设计毕业设计课题论文.doc
- 网络编辑知识考题含标准标准答案.doc
- Windows网络服务搭建管理之《DCDNS(主辅)配置详解》.doc
- 基于JSP在线书店需求分析研究.doc


