- 博客(19)
- 收藏
- 关注
原创 C#中字符串方法
字符串1.Equals("字符串") ,判断源字符串(谁调用的)和 参数字符串是否完全相等 ==,相等返回true,不相等返回false。插入:字符串1.Insert(插入索引,插入的字符串) ,在指定下标的位置插入指定的字符串,形成新的字符串。字符串1.StartsWith("字符串") ,判断参数字符,在字符串中是否是开头字符,返回布尔值。字符串1.EndsWith("字符串") ,判断参数字符,在字符串中是否是结束字符,返回布尔值。字符串1.Split("分隔符") ("自定义多个分割符","")
2025-01-16 20:40:05
906
原创 10.30笔记
(属性)是一种特殊的类,用于为代码元素(如类、方法、属性等)提供元数据。这些元数据可以在编译时、运行时被访问,用于描述代码元素的特性、行为或提供额外的信息。:静态构造函数是一种特殊的构造函数,它没有访问修饰符,也不带参数。:如果没有显式定义构造函数,编译器会为类自动生成一个默认的无参数构造函数。这个构造函数通常只调用基类的默认构造函数。:可以定义一个或多个带参数的构造函数,以允许在创建对象时传递参数,从而提供不同的初始化方式。:私有构造函数用于防止外部代码直接创建类的实例,通常用于单例模式。
2024-11-03 10:53:57
451
原创 C#中的集合
在C#中,集合是存储多个项的数据结构,这些项可以是相同类型或不同类型。C#提供了多种内置集合类型,用于不同的场景和需求。数组(Array)固定大小的元素序列。声明时必须指定大小和类型。列表(List<T>)动态数组,可以根据需要自动调整大小。允许存储重复的元素。提供快速的索引访问。字典(Dictionary<TKey, TValue>)基于键值对的集合,每个元素都包含一个键和一个值。键必须是唯一的,而值则不必。提供快速的查找速度。队列(Queue<T>)先进先出(FIFO)的数据结构。
2024-09-12 21:59:48
2627
原创 类的执⾏顺序?
的静态构造函数首先被执行,然后是实例构造函数,接着是方法调用、属性访问和索引器访问。类的静态成员在应用程序域卸载时被清理,如果类包含静态析构函数,它将在静态成员被清理前执行。在C#中,类的执行顺序取决于你如何组织和调用代码。如果类包含静态构造函数,它将在类首次被引用时执行,且仅执行一次。当对象不再被引用,且垃圾回收器回收对象时,析构函数将被调用。如果方法中包含对其他方法的调用,将按照调用顺序执行。不再被引用时,它的析构函数将被执行。当创建类的实例时,实例构造函数将被调用。在对象创建后,可以调用其实例方法。
2024-09-11 19:27:34
599
原创 C#中抽象类和接⼝有什么区别?
接口只能包含方法、属性、索引器和事件,并且这些成员都是抽象的,直到C# 8.0,接口可以包含默认方法实现、静态成员和初始化的只读属性。接口只能包含没有实现的成员,所有的方法都是抽象的,直到C# 8.0引入了默认接口方法,允许在接口中提供方法的默认实现。抽象类通常用于表示具有一些共有功能和状态的类层次结构的一部分,它们可以包含一些通用的实现代码。接口也不能被直接实例化,但可以通过实现接口的类来创建对象,或者使用接口的默认实现。抽象类可以包含有实现的成员(即包含方法体的方法)和没有实现的成员(抽象方法)。
2024-09-11 19:25:28
1203
原创 C#中的string和stringbuild
C# 中的字符串是不可变的,这意味着一旦创建了一个字符串对象,你就不能更改它的内容。对字符串的任何修改都会创建一个新的字符串对象。的不可变性,频繁修改字符串(特别是在循环中)可能会导致性能问题,因为每次修改都会生成新的字符串对象,增加内存分配和垃圾收集的压力。允许你修改字符串内容而不创建新的字符串实例,这使得在频繁修改字符串内容的情况下更加高效,尤其是在循环中构建字符串时。它允许你修改字符串的内容而不创建新的字符串对象,这使得它在频繁修改字符串内容的场景下(如循环中构建字符串)更加高效。
2024-09-10 22:27:57
1479
原创 C#中的数组
在 C# 中,数组是一种数据结构,用于存储固定大小的相同类型的元素集合。数组可以是一维的,也可以是多维的(例如二维、三维等)。数组在声明时必须指定元素的类型,并且一旦创建,其大小就是固定的。
2024-09-09 11:18:35
3179
原创 C#中的装箱和拆箱是什么
在 C# 中,装箱(Boxing)和拆箱(Unboxing)是与值类型和引用类型相关的概念,涉及到值类型的数据在托管堆(Heap)上的存储方式。
2024-09-08 14:29:19
888
原创 C#中的可空类型和空合并运算符
要定义一个可空类型,你可以在值类型的后面加上一个问号?。int?这行代码定义了一个可空的整数类型,它可以存储int类型的值,或者null。用途?用于声明可空类型,允许变量存储null值。??用于在表达式中提供默认值,当左侧表达式的结果为null时。位置?通常出现在类型声明中,如int?。??出现在表达式中,用于条件赋值。功能?允许变量存储null,这是值类型的扩展。??是一个逻辑运算符,用于在左侧表达式为null时提供一个备选值。语法?后面直接跟类型。??后面跟一个表达式,表示当左侧为null时的默认值。
2024-09-07 16:50:27
1127
原创 C#中的类
在C#中,类是面向对象编程的核心概念之一。它是一种引用类型,用于封装数据和与数据相关的方法。类可以被看作是创建对象的蓝图或模板。类定义:使用关键字class来定义一个类。类名通常以大写字母开头。// 类成员成员变量(字段):字段是类的属性,用于存储数据。它们可以是私有的(只能在类内部访问)或公共的(可以在类的外部访问)。构造函数:构造函数是一种特殊的方法,用于初始化新创建的对象。它与类同名,并且不返回任何值。方法:方法定义了类的行为。它们可以包含参数,并返回一个值或不返回值(即void。
2024-09-06 13:54:29
1440
原创 C#中的方法上部
多态性使得你可以编写更加通用和灵活的代码,通过统一的接口来处理不同类型的对象。在C#中,多态性主要通过方法重写和接口实现来实现,从而提高代码的可维护性和可扩展性。方法重载是同一个类中方法名相同但参数列表不同的方法。方法重写是派生类中与基类具有相同方法名和参数列表的方法,它改变了基类方法的行为。
2024-09-05 16:19:35
1687
原创 C#中的引用类型、动态类型、类型转换以及作用域
引用类型的变量存储的不是实际的数据,而是指向数据的引用(或者说是内存地址)。当创建一个引用类型的变量时,实际上是在堆上为该变量的数据分配了内存,并且变量存储了这块内存的地址。这种转换通常发生在兼容的类型之间,例如从派生类到基类,或者从大范围的小类型到小范围的大类型(如从。,这意味着你可以在不进行显式类型转换的情况下,对动态类型的对象执行操作,如调用方法、访问属性等。显式类型转换需要程序员明确指定,通常用于不兼容的类型之间,或者从大范围的大类型到小范围的小类型(如从。最后,我们尝试调用一个动态添加的方法。
2024-09-04 14:16:44
2065
原创 C#中的swich
在C#中,switch语句提供了一种基于不同条件执行不同代码块的方法。它允许你根据变量的值选择执行不同的代码路径。switch语句对于多个if-else语句是一个更清晰、更高效的替代方案,尤其是在有多个条件需要检查时。
2024-09-04 09:22:35
513
原创 C#中的for、while、do while以及三者的区别
在C#中, 循环是一种基本的控制结构,用于重复执行一段代码直到满足特定的条件。 循环通常用于当你知道需要执行循环的确切次数时。 循环的基本语法如下: 初始化表达式:在循环开始之前执行一次,通常用于声明和初始化循环控制变量。条件表达式:在每次循环迭代之前检查,如果为 ,则继续执行循环体;如果为 ,则退出循环。迭代表达式:在每次循环迭代的末尾执行,用于更新循环控制变量。下面是一个简单的 循环示例,用于打印数字1到10:在这个例子中:初始化表达式是 ,它声明了一个整型变量 并将其初始化为1。条件
2024-09-04 09:02:12
1387
原创 C#中关键字、注释、声明变量和i++、++i和除法以及取余
在C#中,变量的类型非常重要,因为它决定了变量可以存储的数据类型以及可以对变量执行的操作。在C#中,声明变量是为程序中的值分配存储空间和指定类型的过程。在C#中,关键字是预定义的保留字,它们具有特殊的意义和用途,不能用作标识符(如变量名、类名等)。通常用于循环中,当你需要在循环中使用变量的当前值,并且希望在操作后递增变量。通常用于循环中,当你需要在循环中使用变量的当前值,并且希望在操作后递减变量。在C#中,除法和取余是两种基本的算术运算符,用于处理数值类型的数据。:定义一个在同一程序集内部可访问的成员。
2024-09-03 21:49:46
1689
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人