C#基础总结
1、执行.NET应用程序时经历的几个步骤
- 用C#编写应用程序代码
- 把应用程序代码编译为中间语言代码(MSIL),存储在程序集中
- 使用JIT编译器将MSIL编译为本机代码
- 在托管的公共语言运行库(CLR)环境下运行本机代码。
2、.NET特性
- 一次编译,到处运行----由于.NETFramework的平台无关性
- 支持语言互操作性----通用语言系统(CLS)
- 自动内存管理
- 基类库
3、命名行示例
- 编译File.cs产生File.ext
csc File.cs
- 编译File.cs产生File.dll
csc/target:library File.cs
- 编译File.cs产生My.ext
csc/out:My.ext File.cs
4、C#语句以分号作为语句结尾
5、添加注释。采用"//"为单行注释;采用“/**/”为多行注释
6、C#区分大小写
7、类和方法的主体以“{”开始,以“}”结束
8、Console是一个类,表示控制台应用程序的标准输入流、输出流和错误流。
9、C#可执行文件必须有一个Main方法。
10、变量
- 代表存储地址
- 必须先定义后使用
- 不允许只声明不赋值
- 一条语句可以声明和初始化多个变量
11、类型推断:var
12、常量:在声明和初始化变量时,在前面加上关键字const
13、流程控制
- if-else语句
- switch-case语句
14、循环语句
- for
- while
- do-while
- foreach
15、跳转语句
- goto
- break
- continue
- reture
16、字符串常见操作
- 取字符串长度---- str.length
- 字符串转为比特码 ---- byte[] bytStr=System.Text.Encoding.Default.GetBytes(str);
- 字符串相加
StringBuilder---Append
String-----+
- 截取字符串的一部分---- 变量.Subtring(起始位置,位数)
- 查找指定位置是否为空字符---- char.IsWhiteSpace(字符串,位数)
- 查字符是否是标点符号---- char.IsPunctuation('字符')
- 把字符转化为数字---- (int)'字符'
- 把数字转化为字符---- (char)数字
- 清除字符串前后包含的空格---- str.Trim()
- 替换字符串---- str.Replace("原字符串","新字符串")
- 删除字符串中最后一个字符
方法1、str.Substring(0,str.Length-1)
方法2、str.ToString.RTrim('')
方法3、str.TrimEnd(char[] char)
- Split的3种方法
方法1、用单个字符分隔----str.Split(',')
方法2、用多个字符分隔----str.Split(new char[2]{'j','s'})
方法3、用字符串分隔----Regex.Split(str,"js",RegexOptions.IgnoreCase)
- 几种输出字符串的格式
12345.ToString("n"); //生成 12,345.00
12345.ToString("c"); //生成 ¥12,345.00
12345.ToString("e"); //生成 1.2345e+004
12345.ToString("f4"); //生成 12345.0000
12345.ToString("x"); //生成 3039(16进制)
12345.ToString("p"); //生成 1,234,500.00%
- 把123456789转换为12-345-6789的2种方法
str.ToString("##-###-####")
str.Insert(5,"-").Insert(2,"-")
- 输出21个A的简单做法
str=new string('A',21)
17、得到随机数的方法
Random r=new Random();
r.Next()//返回随机整数
r.Next(10)//返回小于10的整数
r.Next(1,20)//返回1~10内的整数
r.NextDouble()//返回0.0~1.0之间的随机数
18、Int32.TryParse()、Int32.Parse()、Convert.ToInt32()比较
如果要转换的字符串为null,Convert.ToInt32()返回0;Int32.TryParse()返回0;Int32.Parse()抛出异常。
性能上:Int32.TryParse()优于Int32.Parse()优于Convert.ToInt32()。
19、几个常用的数学函数
- 返回大于等于指定数字的最小整数 Math.Ceiling(0.40)//1
- 返回小于等于指定数字的最大整数 Math.Floor(1.90)//1
- 返回两个32位数字的乘积 Math.BigMul(2,3)//6
- 返回两个数的商(类型一致) r/s
- 返回商,输出余数 Math.DivRem(5,3,out ys)//结果为1,输出ys=2
C#基础总结的更多相关文章
- java基础集合经典训练题
第一题:要求产生10个随机的字符串,每一个字符串互相不重复,每一个字符串中组成的字符(a-zA-Z0-9)也不相同,每个字符串长度为10; 分析:*1.看到这个题目,或许你脑海中会想到很多方法,比如判 ...
- node-webkit 环境搭建与基础demo
首先去github上面下载(地址),具体更具自己的系统,我的是windows,这里只给出windows的做法 下载windows x64版本 下载之后解压,得到以下东西 为了方便,我们直接在这个目录中 ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Golang, 以17个简短代码片段,切底弄懂 channel 基础
(原创出处为本博客:http://www.cnblogs.com/linguanh/) 前序: 因为打算自己搞个基于Golang的IM服务器,所以复习了下之前一直没怎么使用的协程.管道等高并发编程知识 ...
- [C#] C# 基础回顾 - 匿名方法
C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...
- HTTPS 互联网世界的安全基础
近一年公司在努力推进全站的 HTTPS 化,作为负责应用系统的我们,在配合这个趋势的过程中,顺便也就想去搞清楚 HTTP 后面的这个 S 到底是个什么含义?有什么作用?带来了哪些影响?毕竟以前也就只是 ...
- Swift与C#的基础语法比较
背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...
- .NetCore MVC中的路由(1)路由配置基础
.NetCore MVC中的路由(1)路由配置基础 0x00 路由在MVC中起到的作用 前段时间一直忙于别的事情,终于搞定了继续学习.NetCore.这次学习的主题是MVC中的路由.路由是所有MVC框 ...
- .NET基础拾遗(5)多线程开发基础
Index : (1)类型语法.内存管理和垃圾回收基础 (2)面向对象的实现和异常的处理基础 (3)字符串.集合与流 (4)委托.事件.反射与特性 (5)多线程开发基础 (6)ADO.NET与数据库开 ...
- .NET 基础 一步步 一幕幕[面向对象之方法、方法的重载、方法的重写、方法的递归]
方法.方法的重载.方法的重写.方法的递归 方法: 将一堆代码进行重用的一种机制. 语法: [访问修饰符] 返回类型 <方法名>(参数列表){ 方法主体: } 返回值类型:如果不需要写返回值 ...
随机推荐
- MySQL存储过程中实现回滚
用存储过程处理复杂的业务时,可能涉及到对多张表格的操作,在任一个步骤出了问题,就需要对前面的操作回滚.举例实现: DROP PROCEDURE IF EXISTS pro_test; CREATE P ...
- Java 接口练习题
中国特色社会主义的体制中有这样的现象:地方省政府要坚持党的领导和按 照国务院的指示进行安全生产.请编写一个java应用程序描述上述的体制现象. 要求如下: (1)该应用程序中有一个“党中央”接口:Ce ...
- js 两个滚动事件相互影响
document.addEventListener('scroll', function(event) { if (event.target.id === 't_r_content') { // or ...
- Oracle(创建序列)
概念: 所谓序列,在oracle中就是一个对象,这个对象用来提供一个有序的数据列,这个有序的数据列的值都不重复. 1.序列可以自动生成唯一值 2.是一个可以被共享的对象 3.典型的用来生成主键值的一个 ...
- 合并文件夹里多个excel
Sub 合并当前目录下所有工作簿的全部工作表() Dim MyPath, MyName, AWbName Dim Wb As workbook, WbN As String Dim G As Long ...
- 安装rabbitMQ delayed-messaged
由于一些原因,消息需要延迟发送给消费者,可以用delayed-messaged插件 在 /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5/plugins目录下 # ...
- validate插件深入学习-04自定义验证方法
自定义验证方法 jQuery.validator.addMethod(name,method,[,message]) name: 方法名 method: function(value,element, ...
- Top命令 -转
Windows下的任务管理器虽然不好用(个人更喜欢Process Explorer些),但也算方便,可以方便的查看进程,CPU,内存...也可以很容易的结束进程 没有图形化界面下的Linux,也有命令 ...
- Gbase数据库备份与还原
备份命令:cd D:\GeneralData\GBase\Server\bin 回车 后 : d : 回车 后: dump.exe -usysdba(u+用户名) -pbj ...
- Asp.NET利用ClientScript.RegisterStartupScript("")的同学,请注意!
如果你想要在aspx.cs 文件用利用 ClientScript.RegisterStartupScript(""); 方法动态在DOM中执行脚本(比如想要将后置代码中的验证结果信 ...