<p class="ql-block">Sharp=锋利的;尖锐的</p><p class="ql-block">C#(读作"C Sharp")→微软</p><p class="ql-block">.NET 是微软开发的免费开源开发平台</p><p class="ql-block">C# 依托 .NET 框架运行.NET 为 C# 提供运行环境和类库支持。</p><p class="ql-block"><span style="color:rgb(237, 35, 8);">using System</span><span style="color:rgb(57, 181, 74);">;</span>→引入系统命名空间→有这个就不用写前缀</p><p class="ql-block">⭐<span style="color:rgb(237, 35, 8);">namespace</span><span style="color:rgb(57, 181, 74);"> {</span>→定义自定义命名空间</p><p class="ql-block"><span style="color:rgb(237, 35, 8);">class Program</span><span style="color:rgb(57, 181, 74);">{</span>→定义类</p><p class="ql-block"><span style="color:rgb(237, 35, 8);">static void Main</span><span style="color:rgb(57, 181, 74);">(){</span>→程序入口点</p><p class="ql-block">Program=项目</p><p class="ql-block"><span style="color:rgb(237, 35, 8);">Console.WriteLine</span><span style="color:rgb(57, 181, 74);">(" ")</span>→打印输出</p><p class="ql-block">类型 变量名=值→赋值</p><p class="ql-block">⭐<span style="color:rgb(237, 35, 8);">System.Console.WriteLine</span><span style="color:rgb(57, 181, 74);">(" ")</span>→控制台输出</p><p class="ql-block">Visual Studio 2022是一款强大的C#开发工具</p><p class="ql-block">public 类型 属性→加入属性</p><p class="ql-block">void→不支持return</p><p class="ql-block">量名=标识符</p><p class="ql-block">=Console.ReadLine();→收集用户输入赋值给前面的变量</p><p class="ql-block">注释同以往</p><p class="ql-block">定义赋值后需加分号</p><p class="ql-block">类名通常使用帕斯卡命名法,即每个单词首字母大写.</p><p class="ql-block">变量名一般使用骆驼命名法,第一个单词首字母小写,后面单词首字母大写.</p><p class="ql-block">bool→声明布尔值</p><p class="ql-block">enum 枚举名{等于号赋值</p><p class="ql-block">double num1 = 10.5;</p><p class="ql-block">int num2 = (int)num1;→显式转换</p><p class="ql-block">const 类型 常量名 = 值;→常量定义</p><p class="ql-block">运算符同以往</p><p class="ql-block">有按位与&按位或|按位异或^和按位取反~→整数型二进制</p><p class="ql-block">??→空合并运算符[加默认值]</p><p class="ql-block">?.→条件访问运算符</p><p class="ql-block">逻辑非!优先级高于逻辑与&&和逻辑或||</p><p class="ql-block">Unicode=统一字符编码</p><p class="ql-block">char 变量名='值';→字符赋值</p><p class="ql-block">⭐=Char.ToUpper('字符');→转大写</p><p class="ql-block">.ToLower→小写</p><p class="ql-block">.IsLetter→是否为字母</p><p class="ql-block">.IsDigit→是否为数字</p><p class="ql-block">反斜杠 \→转义字符→同以往</p><p class="ql-block">String的特性→引用类型</p><p class="ql-block">StringBuilder→大量连接</p><p class="ql-block">str1.Equals(str2);→比较字符串相等</p><p class="ql-block">string.Compare(str3, str4);→返回整数</p><p class="ql-block">小于0表示str3小于str4,等于0表示相等,大于0表示str3大于str4.</p><p class="ql-block">String.Format("{0}{1}",第一个变量名,第二个变量名);</p><p class="ql-block">=$"{变量名},{变量名}";→字符串插值</p><p class="ql-block">变量名.Substring(从这个索引的字母开始截取字符串);</p><p class="ql-block">变量名.Substring(从几开始, 截取长度);</p><p class="ql-block">变量名.Split(',');→按逗号分割字符串</p><p class="ql-block">变量名.Insert(索引, "值")→在索引处插入值</p><p class="ql-block">.PadLeft(原字符串长度加新数据长度, '*');→从左填充→也可以Right向右填充</p><p class="ql-block">usingSystem.Text.RegularExpressions;</p><p class="ql-block">正则表达式用于匹配字符串模式的工具</p><p class="ql-block">Regex=正则表达式</p><p class="ql-block">IsMatch=是否匹配</p><p class="ql-block">Regex.IsMatch(量明, @"\d","替换成");→\d表示匹配数字</p><p class="ql-block">字符串量名.Remove(从这个索引开始删除后面的);</p><p class="ql-block">str2.Replace("替换的字符串", "替换成什么").ToUpper();→转换大写</p><p class="ql-block">⭐using System.Text;</p><p class="ql-block">StringBuilder 量名=newStringBuilder ("文字内容");</p><p class="ql-block">量名.();→追加</p><p class="ql-block">量名.Insert(位置, "插入的内容");</p><p class="ql-block">BString类不可变,每次修改创建新对象,StringBuilder类可变</p><p class="ql-block">if(){}elif(){}else{}</p><p class="ql-block">简单过程的话可以忽略括号直接冒号print</p><p class="ql-block">三元运算符→条件 ? 结果1 : 结果2</p><p class="ql-block">可嵌套[qian]</p><p class="ql-block"><br></p><p class="ql-block">=分支</p><p class="ql-block">while (条件不是这个就一直循环){</p><p class="ql-block">对象是类的实例,类是对象的模板</p><p class="ql-block">类名 对象名=new 类名()→创建对象</p><p class="ql-block">public 类型 属性名;</p><p class="ql-block">类是对象的抽象描述,对象是类的具体实例.</p><p class="ql-block">static静态对象只有一个→访问用类名</p><p class="ql-block">~函数名(){→析构函数[释放资源]</p><p class="ql-block">get访问器用于获取属性值;set访问器用于设置属性值.</p><p class="ql-block">public 类型 属性 {中用get{return 属性; }</p><p class="ql-block">set { 属性 = value;}→访问private的属性</p><p class="ql-block">goto 标签名;跳转标签:</p><p class="ql-block">virtual=虚拟的</p><p class="ql-block">abstract=抽象的</p><p class="ql-block">override=覆盖的→派生类</p><p class="ql-block">class B: A{→派生类[同继承]</p><p class="ql-block">方法名相同,参数数量不同→方法重载</p><p class="ql-block">base.→调用父类void成员</p><p class="ql-block">类型[] 数组名= new 类型[数量];</p><p class="ql-block">数组内容用{}包裹</p><p class="ql-block">索引访问从0开始</p><p class="ql-block">类型[,] 二维数组名 = new 类型[行, 4列];</p><p class="ql-block">{{,,},{,,}}→2行3列以此类推</p><p class="ql-block">foreach (类型 代名 in 数组名)→通过代名表示数组名</p><p class="ql-block">for循环修改数组</p><p class="ql-block">using System.Collections;</p><p class="ql-block">collections=收集</p><p class="ql-block">ArrayList list = new ArrayList();→后直接添加元素list.Add(元素);</p><p class="ql-block">list.AddRange(数组名);→多个元素</p><p class="ql-block">Remove()→元素值删除RemoveAt()→索引删除元素RemoveRange()删除指定范围元素。</p><p class="ql-block">类型 indexToRemove = 索引→按索引删除</p><p class="ql-block">数组大小固定,添加或删除元素时,通常要创建新数组.</p><p class="ql-block">Array.Sort(数组名);→升序</p><p class="ql-block">Array.Reverse(数组名);→+降序</p><p class="ql-block">自定义对象排序→IComparable接口=可比较</p><p class="ql-block">merged=合并</p><p class="ql-block">Copy=复制;拷贝</p><p class="ql-block">part=分手;划分</p><p class="ql-block">=list.IndexOf(元素名);→得出索引[类型int]→不存在返回-1</p><p class="ql-block">=list.Contains(元素名);→判断是否存在[类型bool]</p><p class="ql-block">using System.Collections;→使用命名空间</p><p class="ql-block">=new Hashtable();→哈希表</p><p class="ql-block">.Add("键名", "值名");→加键值对</p><p class="ql-block">键不能重复,值可以</p><p class="ql-block">哈希表代名["键名"]→访问键对应值→不存在返回null</p><p class="ql-block">ht["键名"] = "元素名";→通过索引器添加元素</p><p class="ql-block">ht.Clear();→清除全部键</p><p class="ql-block">ht.Remove("键名");→删除键名对应的元素</p><p class="ql-block">Dictionary=字典</p><p class="ql-block">Entry=进入</p><p class="ql-block">foreach (DictionaryEntry de in 哈希表代名){→遍历哈希表</p><p class="ql-block">Console.WriteLine("键: " + de.Key + ", 值: " + de.Value);</p><p class="ql-block"> }</p><p class="ql-block">Contains=包含</p><p class="ql-block">if (代名.ContainsKey("键名"))</p><p class="ql-block"> {→键存在的反应[值同样Value适用]</p>