
C#
文章平均质量分 51
C#一些高阶语法
小刘同志..
愿你开心
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C# —— 索引器(Indexer)
/ 创建一个数组 存储People类对象// 给类添加索引器: 添加一个this[int index]属性,这个属性类型是集合里面存储的类型public People this[int index] // 内部 使用this[0], 类的外部MyTest[0]getthrow new Exception("数组越界");// 取出对应的元素set // 设置数据。原创 2024-12-12 21:16:16 · 598 阅读 · 1 评论 -
C# —— 三目运算符及实例
bool类型返回为真时的内容 : bool类型返回为假时的内容。某高校招生录取分数线为650分 请输入小明语文 数学 英语 物理 政治 体育 化学成绩 判断小明能否顺利被录取。第一个空位 始终是结果为bool类型的表达式 bool变量 逻辑运算符 比较运算符。第二三个空位 什么表达式都可以 但是必须要保证 结果与数据类型是一致的。输入小明和小红的年纪 判断小红和小明谁大 然后输出小明大还是小红大。获取数据之后 进行判断 判断小红的年纪大 还是小明的年纪大。三目运算符: 套路 三个空位 两个符号。原创 2024-06-14 20:53:29 · 911 阅读 · 0 评论 -
C# —— 对象
对象: 类的实例化,类中的其中一个, 可以访问类中的属性和方法,所以才有了对象 属性 或者对象方法 () 这种方法创建对象: 类名 对象名 = new 类名()原创 2024-06-19 19:42:14 · 460 阅读 · 0 评论 -
C# —— switch语句
int b = 10;break;原创 2024-06-15 20:57:56 · 1415 阅读 · 0 评论 -
C# —— 访问修饰符对继承的影响
/ 公共的或者受保护的属性可以被继承过来 例如b c d。// 私有的属性和方法不能继承 例如a不能继承。// 子类的访问: 直接b或者this.b。// 对象访问: 对象.b 访问。// 类访问 People.b。当前类访问: 直接b或者this.b。子类可以继承父类那些东西?原创 2024-06-26 21:21:40 · 539 阅读 · 0 评论 -
C# —— (左移 右移 异或 与 或 )运算规则
因此,左移可以理解为整数的乘法,而右移则是理解为整数的取整除法。如果左移,则右边补零,(3) 1 ^ 1 = 0,0 ^ 0 = 0 任何数异或自己=把自己置0。(2) 1 ^ 0 = 1,1 ^ 1 = 0 1异或任何数=任何数取反。(1) 0^0=0, 0^1=1 0异或任何数=任何数。换算成十进制 8 右移2位 变成8/(2*2)=2。换算成十进制 3 左移2位, 变成3*2*2=12。例如 二进制 011 ,左移2位, 变成01100。原创 2024-07-16 21:01:29 · 749 阅读 · 0 评论 -
C# —— 泛型
重点: 泛型方法调用的时候 由传入的类型坚定着实参的类型,实参类型决定着形参的类型,所以形参作用就进而体现了,参数类型不固定 由方法调用决定。例子 封装一个泛型方法 有返回值 泛型数组 ,参数传递一个任意类型的数据和数字 转化为对应长度的数组,并且数组里面存储的是传递的类型。3 定义泛型方法 传递两个泛型参数,两个参数类型不一样 可以使用 Ta 以后可以 T1... 以后可以 T1...T2...T3。2 调用带两个泛型参数的方法 Test1 传递的类型是一个。泛型: 广泛的类型 一般用于传递类型的。原创 2024-07-17 21:06:22 · 594 阅读 · 1 评论 -
C# —— 析构函数
构造函数创建对象 对属性进行初始化的作用析构函数: 当一个对象被释放的时候执行。原创 2024-07-25 21:23:51 · 836 阅读 · 4 评论 -
C# —— HashTable
集合collections命名空间,专门进行一系列的数据存储和检索的类,主要包含了:堆栈、和队列、list、ArrayList、数组 HashTable 字典。Dictionary 字典 长度不固定 类型固定 存储的是键值对,通过键来进行访问 字典的查询速度更快。HashTable 哈希表 长度不固定 键值类型不固定,存储的是键值对,通过键进行访问。ArrayList动态数组, 长度不固定 类型不固定 通过索引值访问。List 列表 长度不固定,类型固定 通过索引值访问。4 通过键获取值 hash表[键]原创 2024-07-18 21:20:45 · 486 阅读 · 4 评论 -
C# —— var
var a;报错var: 在声明的时候 不清楚变量的类型,复制成功之后才会知道变量的类型,var在定义完变量一定要赋值,可以接收任意类型的变量。原创 2024-07-17 20:59:37 · 609 阅读 · 0 评论 -
C# —— CRC16 算法
CRC16:即循环冗余校验码。数据通信当中一种常用的查错校验码其特征信息字段和校验字段的长度可以是任意选定的,对数据进行指定多项式计算并且将得到的结果附加在帧的后面,接受的设备也执行类似的算法,以保证数据传输的正确性和完整性。原创 2024-07-16 21:10:00 · 2621 阅读 · 1 评论 -
C# —— Sort排序
使用 CaseInsensitiveComparer.Default.Compare 对数字 字符串 汉字都可以进行对比。数组的元素是字符串 字符串也可以进行比较。因为字符串不能使用x-y这种方式进行比较。当返回x-y 正序排序。当返回y-x 正序排序。原创 2024-07-12 19:50:00 · 1074 阅读 · 0 评论 -
C# —— 数组的对象方法
类.方法名() 作业遍历数组,参数2函数,对数组所有的元素进行相同的操作。参数1 复制的目标的数组,参数2是从那个位置开始复制的。以下 数组的对象方法。原创 2024-07-12 19:36:12 · 238 阅读 · 0 评论 -
C# —— 数组的告诫查询方法
Findlndex 和 Find 用法一样,FindIndex找到满足条件的元素的索引 找不到的返回-1,Find找到满足条件的元素。TrueForAll()判断一个数组元素是否都满足条件,如果都满足了 结果为true,只要有一个不满足 结果为false。Find 参数1 目标数组,参数2是一个方法,返回满足的条件 一般是一个bool值 观察数组的元素是否满足这个条件。list是否存在满足条件的元素 value是数组的元素。判断数组中是否至少有一个满足条件的元素,(只要有一个满足了就为true)原创 2024-07-11 19:45:30 · 959 阅读 · 1 评论 -
C# —— 方法的参数列表
固定参数和不定参数个数的方法声明,先把固定的参数写在前面,不定参数个位数写在后面。参数个数不确定 可以使用 params 数据类型[] 参数名字进行定义;10, "hello world" 是属于固定参数。参数列表格式,如果有一定数量的参数用,隔开。既有固定参数 和不定参数方法的调用。不定参数关键字 params。a,b 是不定参数数组的元素。原创 2024-07-11 19:38:49 · 377 阅读 · 0 评论 -
C# —— Directory类
Directory 提供了目录以及子目录进行创建移动和列举的操作方法Directory 和DirectoryInfo类 (主要操作文件目录属性列如文件是否隐藏的 或者只读等这些属性)原创 2024-07-10 21:06:35 · 1263 阅读 · 0 评论 -
C# —— BufferedStream的
BufferedStream的主要特点和用途如下:特点:提供缓冲区,减少对底层流的直接访问。提高读写操作的速度,尤其是在处理大量数据时。可以配置缓冲区大小,以适应不同的应用需求。用途:优化对文件、网络资源等底层流的读写性能。作为其他非缓冲流(如FileStream、NetworkStream)的包装器,增加缓冲功能。创建一个缓存去对象 参数是stream对象,指定字节临时存储的路径seek设置当前缓存流中的位置存储数据。原创 2024-07-10 21:00:24 · 1499 阅读 · 0 评论 -
C# —— BinaryWrite和BinaryRead 文件读取
BinaryWrite 和 BinaryRead 从二进制流读取原始数据 以二进制流写入数据。参数2 创建文件的模式 create 如果文件存在 会把之前的替换。数组 变量 内存当中就是缓存,读写块,不是持久存程序一但停掉 存储数据立马消失。文件读写操作,存储在硬盘空间,持久化存储,坏处 存储慢。参数3 文件的权限,写入文件。清空缓存区,将缓存区里面数据写入指定的文件。创建一个写入对象 参数是文件流。以二进制的形式进行读写文件。原创 2024-07-09 19:42:22 · 526 阅读 · 0 评论 -
C# —— FileStream文件流
参数3 : 对文件有哪些权限 可以对文件来进行那些操作,列如Read 读取操作,ReadWrite读写操作 write 写。I/O类 包含各种不同的类 用于执行各种文件操作,创建文件删除文件 读写等操作。Append:追加,打开一个已有文件 并将光标移到文件末尾,如果没有该文件先创建文件。create: 创建一个新文件 如果已经有了这个文件 先删除这个旧文件,在创建。如果有8.txt文件,就直接打开 如果没有 先创建再打开,可以进行读写操作;open :打开一个已有的文件,如果没有文件,程序抛异常。原创 2024-07-09 19:34:16 · 620 阅读 · 0 评论 -
C# —— File文件读写
在进行文件操作的时候 必须先引入IO命名空间 I是in 输入;out 输出File 类指定文件的读取 写入 复制 剪切 删除操作的功能。原创 2024-07-09 19:31:55 · 733 阅读 · 0 评论 -
C#中的异常捕获 try catch finally
处理异常提供的四个关键字,try...catch...finally...throwfinally 最后,不管异常是否被抛出都会执行,例如 打开一个文件,不管是否出现异常都需要关闭,throw: 当问题出现的时候 程序可以抛出一个异常,使用throw关键字抛出异常,原创 2024-07-08 19:56:46 · 509 阅读 · 1 评论 -
C# —— try catch
如果捕获不同类型的错误 需要在catch时候添加不同类型的对象 FormatException 格式错误的类型;OverflowException超出范围。try catch 可以捕获多个错误,try...cath...cath。异常代码: 例如除数如果为0的情况 或者不同类型转换的时候出的错。try尝试执行代码 有可能出现错误。catch 捕获错误。原创 2024-07-08 19:52:35 · 623 阅读 · 0 评论 -
C# —— 日期对象
/ 把字符串2023年9月 13 16:40转成时间对象。h表示12小时值 hh表示12小时值个数前面加0。H表示24小时值HH表示 24小时值个数前面加0。DayOfWeek 是枚举类型 具体数值一般都是数字 值类型。// now 是DateTime类型,m表示分钟 mm表示分钟 个位数前面加0。获取2023年9月 13 16:00 距离1979年的眇。dd 表示日期个位前添加0 , 09。MM 表示月份个位前添加0 ,09。ss表示秒个数前面加0。yyyy 表示完整年。原创 2024-07-04 21:01:35 · 555 阅读 · 0 评论 -
C# —— Math对象
Math 数学类 提供了一些相关数学计算的属性和方法、四舍五入、向上求整、向下求整、开平方,几次方 最大值和最小值 sin cos 绝对值。原创 2024-07-03 19:32:50 · 848 阅读 · 0 评论 -
C# —— 方法参数ref和out的作用
/ out 关键字只强调能够返回什么值给外边的变量 不关心传入的是什么样的值,3 在方法内部需要先初始化才能使用。// 如果方法参数加上ref ,结果是20,传递的数据是引用类型,在方法进行修改形参,实参会跟着变化。out 关键词,return 关键字用于从函数中返回一个值,只能返回一个值,可以使用out来从函数中返回两个值。结果10,传递的数据是值类型,在方法中进行修改,实参不会跟着变化。ut 输出参数把方法中的一个数据赋值给自己,于引用参数相似。ref 关键字可以使参数变成引用类型的参数,原创 2024-06-27 19:41:39 · 433 阅读 · 0 评论 -
C# —— 子类访问父类
创建子类对象的时候可以调用父类的带参数的构造函数,在子类的构造函数后面:base()调用父类的构造。创建子类对像时候 默认调用父类的无参数的构造函数,不会调用带参数构造函数。原创 2024-06-25 19:57:36 · 650 阅读 · 0 评论 -
C# —— 继承
继承: 可以根据现有的类a生成一个新类b,希望b类具有a类的属性和方法,可以让b类继承于a类,所以a类就是父类,b类是子类或者派生类,但是注意一个类不能同时继承两个类,c继承b,b继承a。1.封装: 例如平时定义一个类 添加属性和方法,属性和方法必须通过指定的对象进行使用,(专业来讲。如果说一个类没有继承任何类,默认继承与Object类,所有的类基类都是Object,可以理解为Object就是C#中祖宗。2.继承: 子类和父类的区分,子类可以继承父类的属性和方法 不用在子类重新定义,原创 2024-06-24 19:31:04 · 476 阅读 · 0 评论 -
C# —— 构造函数
构造函数: 一般在函数为类的属性初始值的作用,构造函数的名称类名在类里面定义构造函数 方法名和类名同名 不能带返回值类型 void/非void 不能有// 创建一个构造函数set;set;// 在类里面定义构造函数 方法名和类名同名 不能带返回值类型 void/非void 不能有// 构造函数// 构造函数带参数// 把参数赋值给属性Age = age;set;set;set;set;set;set;set;set;Speed = sp;Type = "大";原创 2024-06-21 14:31:33 · 431 阅读 · 2 评论 -
C# —— 属性和字段
4.字段可以存储数据,属性不能存储数据,通过属性访问私有的字段,可以保证私有字段的安全性。属性的gei和set作用: get取出私有字段 可供外部使用;2.字段一般都是私有的private,属性一般是公开的Public。3.字段以小驼峰命名方式 age,属性一般是以大驼峰命名 Age。1.都是定义在一个类中,属于类成员变量。原创 2024-06-20 19:42:36 · 451 阅读 · 0 评论 -
C# —— 类
类;就是具有相同属性和方法的对象集合,例如,人类 动物类型 ADC类等 Array数组类 ArrayList类 List类 字符串类等 类包含又什么东西组成 又什么可执行的操作(方法)对象;类的实例化.通俗讲就是类中的其中一个, 例如 哈士奇,鲁班等 a1 a2 a3就是ArrayList中的对象类成员: 一个类包含的信息属性和方法定义一个人类: 属性: 姓名 年龄 身高 体重等 方法;吃饭 睡觉 打豆豆类和对象贯穿于整个面向对象编程语言中,也就是核心内容语法: 修饰符 class类名。原创 2024-06-19 19:40:00 · 321 阅读 · 0 评论 -
心跳机制讲解及实例
心跳机制出现在tcp长连接中,客户端和服务器之见定时发送一种特殊的数据包通知对方还在线,以确保tcp链接地可靠性,有可能tcp链接由于某些原因(列入网线被拔了,突然断电)导致客户端断了,但是服务器不知道客户端断了,服务器还保持与客户端连接的状态,所以为了不浪费资源,需要知道客户端非正常中断,服务器把断开客户端断开链接,需要加入心跳包机制。原创 2024-06-18 21:04:36 · 2293 阅读 · 0 评论 -
C# —— 字符串的相关属性和方法
string 属于特殊的引用类型字符串创建的三种方式。原创 2024-06-18 19:19:38 · 529 阅读 · 0 评论 -
C# —— 字典
字典: 包含一个key(键)和这个key所对应的value(值),字典是无序的,key是唯一的,可以根据key获取值。可以吧键当成数组的索引值进行理解<> 泛型定义一个字典 new Dictionary<key的类型, value值的类型>()dic.Add("name", "刘总");// add() 方法添加键值对 键为name值为 值为刘总// 添加一个元素 键为age 值为20。原创 2024-06-18 19:13:29 · 1618 阅读 · 0 评论 -
C# —— for循环语句
第二个空(条件表达式): 表明进入循环的条件 一个bool类型的值(bool类型 条件运算符 逻辑运算符)Console.WriteLine("这是一个特殊的for循环");for循环同while dowhile循环一样 可以同其他条件语句等进行嵌套使用。第一个空(初始表达式): 一般用来声明一个临时的局部变量 用来计数。第三个空(增量表达式): 使用第一个空中的变量 进行自增减运算。for循环执行时 先执行初始表达式 进行变量的初始化。然后切判断条件是否满足 满足条件则执行 不满足则不执行。原创 2024-06-17 19:32:56 · 1979 阅读 · 0 评论 -
C# —— 枚举
枚举是一个特殊的存在// 它是一个被命名的整形常量的集合// 一般用来表示 状态 类型 等等Boss, // 1。原创 2024-06-17 19:30:41 · 993 阅读 · 0 评论 -
C# —— do_while循环
do...while循环跟其他语句有一个特别注意点 语句结束需要加分号 如果不加会报错。do...while 循环 是先执行一遍 循环体里面的逻辑 再判断是否继续执行。while 循环 先判断条件是否满足 再进行循环。原创 2024-06-16 20:11:28 · 836 阅读 · 0 评论 -
C# —— while循环语句
通过使用break关键字 跳出循环 break之后的代码不会再进行执行 当然 循环也会结束。当代码逻辑执行完 会回到while循环开头。// 条件分支语句: 让代码产生分支 进行执行。循环体(条件满足时执行的代码块)嵌套使用时 先循环最里面的循环体 循环完之后再执行外层的循环体。// 循环语句 : 让代码可以重复执行。循环未结束时 会一直执行里面的代码块。让顺序执行的代码 可以停下来 循环执行某一代码块。一直循环 执行循环体内的代码块 "直到死为止"作用 : 控制循环逻辑的关键词。原创 2024-06-16 20:08:42 · 2029 阅读 · 0 评论 -
C# —— 条件分支语句
不满足条件时 需要执行的代码块 放在这里。满足条件时 需要执行的代码块 放在这里。执行到最后 不满足条件的代码块 放在这里。满足条件时 需要执行的代码块 放在这里。满足条件时 需要执行的代码块 放在这里。满足条件时 需要执行的代码块 放在这里。else if (bool类型值)if语句 是第一个 可以让我们的程序 产生逻辑变化的语句。if (bool类型值)// if判断的嵌套。作用: 判断 满足条件时 执行的一些代码。让顺序执行的代码 产生分支。if (bool类型值)if (bool类型值)原创 2024-06-15 20:55:31 · 569 阅读 · 0 评论 -
C# —— 位运算符
位运算符 主要是用于数值类型计算运算方式: 将数值转换为二进制 在进行位运算返回的是一个二进制转十进制的数值如果二进制数 不够位置 则在前面补零。原创 2024-06-14 20:48:01 · 483 阅读 · 0 评论 -
C# —— 逻辑运算符
逻辑运算符用来连接多个 bool 类型表达式,实现多个条件的复合判断。C#中的逻辑运算符包括:逻辑非(!)、逻辑与( &&、& )、逻辑或( ||、| )。原创 2024-06-13 19:39:51 · 1645 阅读 · 0 评论