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 基础 一步步 一幕幕[面向对象之方法、方法的重载、方法的重写、方法的递归]
方法.方法的重载.方法的重写.方法的递归 方法: 将一堆代码进行重用的一种机制. 语法: [访问修饰符] 返回类型 <方法名>(参数列表){ 方法主体: } 返回值类型:如果不需要写返回值 ...
随机推荐
- Thinkphp学习回顾(一)之基本结构目录
TP框架的学习一般都是从了解框架的基本结构开始的,每个文件都有其专属的作用,我的TP框架的回顾也从基本结构开始讲起. 一.ThinkPHP的获取 http://www.thinkphp.cn 这是 ...
- angular 后台交换实例
<!DOCTYPE html><html lang="en" ng-app="myApp"><head> <meta ...
- EPSON LQ610K 设置税控盘打印发票的格式
问题困扰 之前一直是手动调试发票打印格式,浪费发票纸张不说,而且还浪费时间.今天在Parrells Desktop里利用Bonjour设置打印机的时候,找到了EPSON网站有这方面的介绍,根据上面的提 ...
- 常用的logging配置
centos 6.5,python 2.6 习惯封装一个log.py #!/usr/bin/python # -*- coding: UTF-8 -*- import logging from log ...
- 小识Tableau
关于 Tableau Tableau 帮助人们将数据转化为可以付诸行动的见解.探索无所不能的可视化分析.只需点击几下即可构建仪表板,进行即兴分析. Tableau与R对比: 1.从开发的角度讲,Tab ...
- U盘插入电脑后,提示需要格式化U盘如何解决?
未弹出U盘就拔掉U盘,有可能会破坏U盘的分区表.当再次把U盘插入电脑时,会提示需要格式化U盘,这是什么情况,如何解决呢?其实只要用DiskGenius硬盘恢复软件就可以解决这个问题.下面和小编一起来看 ...
- 佛洛依德 c++ 最短路径算法
//20142880 唐炳辉 石家庄铁道大学 #include<iostream> #include<string> using namespace std; #define ...
- html5本地存储(localStorage)使用介绍
1.html5几种存储形式 本地存储(localStorage && sessionStorage) 离线缓存(application cache) indexedDB 和 webSQ ...
- ACM 杭电HDU 2084 数塔 [解题报告]
数塔 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submissi ...
- R12供应商地点层付款方法SQL
--R12供应商地点层付款方法SQL:SELECT ipmv.payment_method_name , ipmv.payment_method_code , 'N' primary_ ...