一,数据类型,变量与常量
1,数据类型
值类型:简单类型(整型,实型,十进制型,布尔型),枚举类型enum,结构struct
引用类型:类class,接口interface,委托delegate,数组
区别:值类型存储在内存栈stack中,
引用型存储的是对象的指针引用,存放在heap内存堆中
2,标识符和关键字
标识符规定:
(1):标识符可以由字母,数字,下划线_和普通的Unicode字符组合,不能包含空格,标点。
(2):必须是以字母或者下划线开头,不能以数字开头。
(3):不能与C#关键字名称相同。
(4):允许使用@+保留字作标识符
关键字
C#保留的特殊含义单词,也称保留字,不能用于标识符,关键字都是由小写字母组成。
3,字面常量
字面常量(literal)是指在程序中直接书写的常量
(1)布尔常量
(2)整型常量
(3)实数常量及十进制常量
(4)字符常量
(3)字符串常量
4,变量
变量是在程序的运行过程中数值可变的数据,常用来记录运算中间结果和保存数据
如:
int a,b;
int x=4;
5,C#编码惯例和注释
编码习惯:
(1): 类名,属性名,方法名的首字母大写,,组合单词的每个首字母都需大写,如,MyAClass,AuthorName。
(2):对于接口(interface)的名字,在首字母加I,如IComparable。
(3):局部变量及参数变量首字母一般小写。
注释:
(1):行注释用//
(2):段注释用/。。。。/
(3):C#特有注释///
二,运算符与表达式
(1),算术运算符(+,-,*,/,%,++,–)
(2),关系运算符(>,<,>=,<=,==,!=)
(3),布尔逻辑运算符(!,&&,||,$,|)
(4),位运算符(~,&,|,>>,<<)
(5),赋值运算符,强制类型转换
(6),条件运算符
(7),运算的优先级和结合性
三,流程控制语句
1,结构化程序设计的三种基本流程
(1):顺序结构
(2):分支结构
(3):循环结构
2,简单语句
3,分支语句
(1):if语句
(2):switch语句
4,循环语句
(1):for语句
(2):while语句
(3):do…while语句
5,跳转语句
(1):continue语句
(2):break语句
(3):return语句
(4):goto语句
四,数组
有序数据的集合,具有相同的数据类型,用数组名和下标确定数组的元素。
1,数组的声明
使用数组要分配内存空间,用new运算符,如;
type arrayName = new type[arraySize]
(1):一维数组:type [] arrayName
(2):多维数组:type [, , ,] arrayName
(3):交错数组:type [] [] [] [] arrayName
2,数组的初始化
(1):一维数组:type [] arrayName
int [] numbers = new int []{1,2,3,4,5}
string [] names = new string[]{"Matt","Tom","jeck"}
(2):多维数组:type [, , ,] arrayName
int [,] numbers = new int[]{{1,2},{3,4},{4,5}}
string [,] sibiings = new string[,]{{"Mike","jeck"},{"tom","jerry"}}
(3):交错数组:type [] [] [] [] arrayName
int [] [] numbers = new int [] [] {new int []{2,3,4},new int []{3,4,5}}
//或则
int [] [] numbers = {new int[]{2,3,4},new int[]{3,4,5}}
3,数组元素的使用
数组元素的访问方式
arrayName[index]
4,数组与System.Array
数组是对象,是引用类型,System.Array是所有数组类型的抽象父类型,任何数组都可以使用System.Array具有的属性和方法
关于数组的属性和方法:
(1):Rank属性:数组的维度
(2):Getlength(n)方法
(3):BinarySearch()
(4):Sort():排序
(5):Copy():复制
(6):Clear():数组元素置0
(7):CreateInstance():创建一个数组
5,使用foreach语句访问数组
该语句用来循环访问数组和集合中的元素(只读性遍历)
foreach(变量声明 int 数组名)语句