一、注释
C#中的3中注释符
1)单行注释//
2)多行注释/*要注释的内容*/
3)文档注释///(用来说明类或方法的作用增加代码的可读性)
二、vs中常用的快捷键
ctrl+k+d:快速对齐代码
折叠冗余代码:#Region和#EndRegion
Ctrl+k+c:注释所选代码
ctrl+k+u:取消注释
三、数据类型
int、double、decimal用来存储金钱,值后面需要加上一个m,String是一个类、string为一个关键字、声明变量的时候两者没有区别作用相同,char,......
四、变量命名规则
字母,数字,下划线,@,但不能以数字开头
注意事项:变量名不能与C#中的关键字重复,C#中区分大小写
Pasal大小写:标识符中每个单词首字母double大写,用于类名和成员名
Camel大小写:除第一个单词外,标识符中所有单词首字母都大写,用于本地变量和方法参数。
变量的作用域:一般从声明的括号{开始到}结束
五、运算符
赋值运算符=
+号使用:1算术加法运算符,2连接两个字符串
占位符:从{0}开始,{1}...以此类推。例int m,n,k;Console.WriteLine("test{0},frist{1},second{2}",m,n,k);
接收用户输入:String name=Console.ReadLine();
转义符:\+一个字符,常用的转义符\n \b \\ \t \"
@符号:用在字符串前面表不转义,即用字符串原格式输出
六、类型转换
隐式类型转换:类型不一致时发生的自动类型转换,需满足两个条件1类型兼容如int和double兼容都是数字类型,2目标类型大于源类型如double>int
显式类型转换:强制类型转换,1两种类型相兼容如int 和double,2大的转成小的如double--->int。注意精度问题。保留小数点如{0:0.00}表示保留两位小数点
Convert转换工厂:类型如果是两个相兼容的变量,可以使用自动或强制类型转换。但如果两个类型的变量类型不兼容,如string与int,这个时候我们可以使用一个叫做Convert的转换工厂进行转换。例string s="123";double d=Convert.ToDouble(s);
转换常用函数例Convert.ToDouble()、double.parse()、double.TryParse()。
所有类型都能转换成string类型,调用ToString()。
七、调试
1、F11逐语句调试(单步调试)
2、F10逐过程调试
3、断点调试
八、复杂数据类型
1、枚举类型enum
通常写在命名空间下可以在整个命名空间使用
注意枚举类型与String类型的互转,枚举转成string调用tostring()。string类型转换成枚举类型,需另写代码如:QQStateEnum QSE=(QQStateEnum)Enum .parse(typeof(QQStateEnum),s要转换的字符串)。
2、结构体struct
结构的作用可以一次性声明多个类型不同的字段。
字段和变量的区别:作用都是用来存储数据,本质区别变量在程序运行期间只能存储一个值,而字段可以存储多个值
字段命名规则:规定字段前加下划线例如字段:_name。字段要在结构外使用需加public修饰符,负责结构声明的变量无法访问,字段默认只在结构内有效。
3、数组
可以一次性存储多个相同类型的变量
foreach循环可以一次遍历数组和集合中的值。
九、方法
方法的功能一定要单一,增加方法的可重用性。方法的两个要点方法参数和返回值。
方法中return的作用:1、退出方法,2、返回一个值给调用者
方法中的三个高级参数: out、ref、params
out侧重于使方法返回不同类型的值
out参数要求在方法内部必须为其赋值
ref参数的作用是将一个变量以参数的形式带入一个方法,方法操作后,再把变量带出方法。
ref参数的好处就是不再用return把一个操作后的变量的值返回。
ref要求变量必须在方法的外部赋值与out相反。因为必须先赋值才能操作。
params可变参数
将实参列表中跟可变参数数组类型一致的元素都当做数组的去处理。通常在参数数组前加params,且参数数组必须是形参列表中的最后一个元素