随笔分类 - c#基础
摘要:索引器概述 使用索引器可以用类似于数组的方式为对象建立索引; get访问器返回值,set访问器分配值; this关键字用于定义索引器; 索引器不必根据整数值进行索引,可以自定义查找机制; 索引器可被重载; 索引器可以有多个形参; 索引器必须是实例成员
        阅读全文
                
摘要:https://blog.csdn.net/liuyuehui110/article/details/79732009
        阅读全文
                
摘要:yield关键字的作用是将当前集合中的元素立即返回,实例: 通过断点可以看到,控制台每显示一个集合中的元素,都会到query方法中去取集合元素。 其实yield return是“语法糖”,其本质是生成了一个query的类,这个类实现了IEnumerable和IEnumerator的泛型、非泛型接口,
        阅读全文
                
摘要:.NET Core:https://github.com/dotnet/corefx .NET Framework:https://referencesource.microsoft.com
        阅读全文
                
摘要:可空类型 C# 提供了一个特殊的数据类型,nullable 类型(可空类型),可空类型可以表示其基础值类型正常范围内的值,再加上一个 null 值。在处理数据库和其他包含可能未赋值的元素的数据类型时,将 null 赋值给数值类型或布尔型的功能特别有用。 ? : 单问号用于对 int,double,b
        阅读全文
                
摘要:语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。需要
        阅读全文
                
摘要:什么是LINQ 长期以来,开发社区形成以下的格局: 1、面向对象与数据访问两个领域长期分裂,各自为政。 2、编程语言中的数据类型与数据库中的数据类型形成两套不同的体系,例如: C#中字符串用string数据类型表示。 SQL中字符串用NVarchar/Varchar/Char数据类型表示。 3、SQ
        阅读全文
                
摘要:“委托是具有相同签名的函数(方法)的类型,事件是委托的应用方式之一” 来自评论区老司机 delegate 是为了在C#中把函数作为对象传来传去而实现的一个“函数包装”。由于在C#中函数是二等公民,你不能把它定义在class的层级上,也不能把它作为对象来传递。因此平台提供了一个盛放函数的“容器“,当你
        阅读全文
                
摘要:public delegate void XXXEventHandler(); //定义XXX方法的委托 public class A //发布者类 { public event XXXEventHandler XXXEvent; //定义XXX方法的事件 public void XXX() //当
        阅读全文
                
摘要:数组的缺点:长度固定。因此引入集合的使用。 注:泛型集合更安全,性能更高。 常用集合 对应泛型 ①动态数组ArrayList List<T> 常用方法属性:Add Clear Contains IndexOf Insert Remove Sort ②哈希表Hashtable Dictionary<T
        阅读全文
                
摘要:一、概括 1.通常创建一个对象的方法如图: 通过 Student tom = new Student(); 创建tom对象,这种创建实例的形式被称为构造方法。 简述:用来初始化对象的,为类的成员赋值。 2.构造方法特点 a.方法名与类名相同; b.没有返回值类型; c.必须要通过new的形式调用; 
        阅读全文
                
摘要:string str = "123@163.com"; int index = str.IndexOf('@'); // 返回3 从左向右第一个@ int index = str.LastIndexOf('3'); // 返回6 从右向左第一个3 string newStr = str.SubStr
        阅读全文
                
摘要:隐式转换 自动转换,低精度向高精度转换 int a = 1; double b = a; 显示转换 强行转换,高精度向低精度转换会丢失精度 其他常用转换方式 int age = int.Parse(str);//这种方式当str不是纯数字的字符串时会报错 bool result = int.TryP
        阅读全文
                
摘要:ref--Reference 引用 out--Output 输出 相同点: 代入参数时,前面必须加上ref out 关键字 都能在方法内对外部的变量的值进行更改 不同点: ref代入的参数必须已经声明并且赋值。 out代入的参数可以不用声明赋值,但在方法内部必须对其赋值。
        阅读全文
                
摘要:private:私有的,只有在本类中可以使用 internal:内部的,在同一命名空间下可以使用 public:公有的,在任何地方都能使用 protected:受保护的,在本类和子类中可以访问 类的访问修饰符只能是public或者internal,子类的访问权限不能高于父类的访问权限,因为子类会暴漏
        阅读全文
                
摘要:C#是面向对象的开发语言 类:抽象的(模板)不占用内存空间 对象:具体的(真实存在事物)占用内存空间
        阅读全文
                
摘要:数组:用于存放一组数据类型相同的数据 4个基本要素: 1.数组标识符 数组名称 2.数组元素 存放的值 3.数组下标 下标从0开始 4.数组类型 数组元素类型 几种声明方式: string[] strs = new string[3]; string[] strs = new string[3]{"
        阅读全文
                
摘要:循环:重复将相同或类似规律的代码进行反复执行 减少代码冗余 可维护 可扩展 while(bool) { ...; } 代码块中可以使用break或者continue中断 break:中断整个循环 continue:中断循环的这一次 do { ...; }while(bool) 先执行一次代码块,再进
        阅读全文
                
摘要:switch 表达式支持的类型为 sbyte、byte、short、ushort、int、uint、long、ulong、char、string 或枚举类型,或者可以隐试转换到这些类型的自定义对象或其他内置类型。 switch(enum){ case enum1: ... ; break; case
        阅读全文
                
 
                    
                
 浙公网安备 33010602011771号
浙公网安备 33010602011771号